2016-11-17 8 views
0

다음 명령을 사용하여 소스 파일 (hello.c)을 실행 파일 (hello)로 컴파일하고 실행 파일의 DWARF 정보를 덤프해야합니다. 그러나 "readelf -wi hello"또는 "llvm-dwarfdump hello"를 사용하더라도 DWARF 정보는 없습니다. 나는 어디서 잘못되었는지 궁금해하고있다.왜 DWARF 정보가 없습니까?

clang-3.5 -gdwarf-4 -O0 -emit-llvm -c hello.c -o hello.bc 
llc -dwarf-version=4 -O0 -filetype=obj hello.bc 
gcc hello.o -o hello 

답변

0

문제는 clang과 llvm이 일치하지 않아서 발생했습니다. 나는 clang-3.5와 함께 llvm-3.9를 사용하고있었습니다. 나는 clang-3.5를 clang-3.5로 업그레이드하여 해결했습니다. 특히 llvm_src/tools에 clang-3.9를 추가 한 다음 llvm을 다시 컴파일했습니다.