是否有任何方法可以找出使用-fPIC标志

时间:2015-09-14 09:06:04

标签: c++ static-libraries fpic

我手中有一堆静态库,它们都有两个版本--32位和64位。   当我使用这些静态库编译成共享库时,很奇怪 事情发生了:   1.我使用64位静态库编译64位共享库,一切运行良好;   2.我使用32位静态库来编译32位共享库,ld告诉我[文本部分不可共享]。

所以,我猜32bit静态库不使用-fPIC标志,但我的同事告诉我他添加了标志。   但我仍然怀疑,有没有办法找出静态库是否添加了-fPIC标志。   PS:我知道使用readelf或objdump可能会得到一些线索,但还有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

我相信,如果您使用的是Linux,则可以查看file

的输出
file myLib.so
file myLib.a

如果库是使用-fPIC

编译的,输出应通知您
相关问题