只有动态库大部分没有静态版本是标准吗?我特别询问数学库。在我的 fedora 17(Intel 32 处理器上的 Linux 机器)中,我有最新的 gcc,它有 libm-2.15.so 和符号链接文件 libm.so,但没有 libm.a。
我的系统上是否缺少 libm.a?
安装静态库:
# yum install glibc-static
你问:
只有动态库大部分没有静态版本是标准吗?
在 Fedora 中,只打包动态库确实是标准的。从包装指南:
包含库的包应尽可能排除静态库(例如,通过使用 --disable-static 进行配置)。只有在特殊情况下才应包含静态库。链接到库的应用程序应尽可能链接到共享库而不是静态版本。
然后,
一般来说,强烈建议打包者不要发布静态库,除非存在令人信服的理由。
...继续说,当这样的库被打包时,它应该在一个带有后缀的单独子包中-static
,就像在这种情况下一样glibc-static
。
通常 .somand .a 同时存在,但 dll 是第一位的。
可能缺少静态库,您可以按照 nirk 的说法尝试 yum 命令。