我编译了一个开源库,结果发现生成的共享库(.so)中存在未解析的符号。在我看来哪个对象具有未解析的符号时,下一步很自然,但我无法将nm
或objdump
应用于中间libtool对象文件(.lo)。有什么办法可以看看.lo文件中的符号列表吗?
答案 0 :(得分:1)
您需要在目标文件(nm
文件)上运行objdump
或.o
,而不是.lo
文件。 .lo
libtool
文件由# Name of the PIC object.
pic_object='.libs/libfoo_la-foo.o'
# Name of the non-PIC object
non_pic_object='libfoo_la-foo.o'
使用,text files可以告诉您目标文件真正的位置:
.so
由于您需要了解DSO(pic_object
文件),因此{{1}}文件可能是您要检查的文件。