2016-11-17 77 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.9來解決問題。具體來說,我將clang-3.9添加到llvm_src/tools,然後重新編譯llvm。

相關問題