我可以确定哪些编译器/链接器标记用于创建仅二进制共享库的位置?

12 gcc g++ shared-libraries

我想知道是否有办法找出哪些g++编译器/链接器标志用于创建仅二进制库.

例如,可能存在第三方共享库(仅存在.h/.so文件).

所以我认为在编译和链接我自己的应用程序(即使用仅二进制的第三方库)时使用相同的g ++标志是个好主意.

具体来说,我要求编译器标志,如

  • -fno内联
  • -pthreads
  • -mtune =拱
  • -02

并且有兴趣使用哪些链接器标志:

  • -fpic或-fPIC
  • -fexceptions
  • -pthreads

等等.

小智 0

我不这么认为,因为 ELF 格式中似乎没有包含该信息的部分。在 Linux 上,如果您使用“readelf -a”转储所有信息,则不会显示文件是如何获得的。