2013-10-08 46 views
5

只有动态库大部分没有静态版本才是标准吗?我特别提到数学图书馆。在我的fedora 17(在Intel 32处理器上的linux机器上),我有最新的gcc,它有libm-2.15.so和符号链接文件libm.so,但没有libm.a.为什么没有数学函数的静态库?

libm.a是否在我的系统上丢失?

+3

这可能是非常具体的你distrubtion,但我的Ubuntu 13.04有libm.a位于/usr/lib/x86_64-linux-gnu/libm.a。你有没有在所有可能存在的库中正确地查看库? – goji

+0

@Troy我在libm.a的根目录下搜索,但没有运气。有没有其他方法来检查我的系统上的存在?我使用fedora 17. – KawaiKx

+3

你安装了静态库吗? 'yum install glibc-static' – SheetJS

回答

11

安装静态库:

# yum install glibc-static 
0

一般.somand .A存在在同一时间,但DLL是第一位的。

也许静态库丢失,你可以尝试yum命令为nirk说。

0

你问:

它是一个标准只具有动态库大多没有自己的静态版本?

在Fedora中,确实只是打包动态库的标准。从packaging guidelines

包含库的包应该尽可能地排除静态库(例如通过使用--disable-static进行配置)。静态库只应包含在特殊情况下。链接库的应用程序应该尽可能地链接到共享库而不是静态版本。

后来,

一般情况下,强烈建议打包不出货静态库除非有令人信服的理由存在。

...它接着说,当这样的库包装,它应该是一个独立的子包后缀为-static,在这种情况下glibc-static

相关问题