【发布时间】:2023-03-03 19:25:01
【问题描述】:
现在,我的项目中有一个开源依赖库(mylib.a 文件)的修改版本,因此我通过 gcc 命令静态链接它。我收到的错误是...
"statically linked applications require at runtime the shared libraries from the glibc version used for linking"
我的翻译:我的静态依赖库不能动态使用glibc;它还必须被编译和动态链接。因此,我正在尝试编译和静态链接 glibc。
我收集到需要编译它们,将 *.a 库放置在项目内的文件夹中,为包含头文件添加“-I//location//”,以及“-L //location//" 为库本身添加。
但是,对于问题本身...
如何编译 glibc(32 位和 64 位)?
通过开源研究,我找到了这个链接并克隆了 repo,但我找不到任何关于如何实际编译它的文档。
git clone git://sourceware.org/git/glibc.git
欢迎任何想法或建议。
【问题讨论】:
-
不,您误解了警告。它说“您正在尝试将您的程序与 glibc 静态链接,请注意,它不像大多数人认为的那样工作”。 因此,我正在尝试编译和静态链接 glibc。这是你绝对不应该做的事情。它会浪费你很多时间,并且对警告什么也不做。根本不要使用
-static。
标签: linux gcc compilation static-libraries glibc