我尝试使用以下命令在CentOS 7上构建Boost的调试版本:
./b2 runtime-link=shared runtime-debugging=on variant=debug link=shared install
但是,我在生成的库文件的名称中看不到g
和d
ABI标志。我做错了什么吗?在Windows上构建时,一切正常。
答案 0 :(得分:1)
我认为这应该有用。
如果像你一样建立并使用objdump检查其中一个生成的库
objdump --syms libboost_wave.so | grep debug
我得到了
...
0000000000000000 l d .debug_aranges 0000000000000000 .debug_aranges
0000000000000000 l d .debug_info 0000000000000000 .debug_info
0000000000000000 l d .debug_abbrev 0000000000000000 .debug_abbrev
0000000000000000 l d .debug_line 0000000000000000 .debug_line
0000000000000000 l d .debug_str 0000000000000000 .debug_str
0000000000000000 l d .debug_ranges 0000000000000000 .debug_ranges
...
如果在没有“runtime-debugging = on variant = debug”的情况下构建相应的结果,则不会导致“grep debug”匹配。