gpt4 book ai didi

c++ - Glibc 的静态链接

转载 作者:可可西里 更新时间:2023-11-01 16:37:40 26 4
gpt4 key购买 nike

我如何编译我的应用程序静态链接 glibc 库,但只编译我的应用程序所需的代码? (不是所有的库)

现在我的编译命令:

g++  -o newserver  test.cpp ... -lboost_system -lboost_thread -std=c++0x

谢谢!

最佳答案

这就是 -static 所做的(如另一个答案中所述):不需要的模块不会链接到您的程序中。但是您对需要的东西的数量的期望(在某种意义上我们无法说服链接器相反)可能过于乐观。

如果您尝试这样做是为了可移植性(在其他机器上使用较旧的 glibc 或类似的东西运行可执行文件),有一个简单的测试问题来查看您是否会得到您想要的东西:

你有没有想过 libnss 的问题,你确定它不会咬你吗?

如果您的回答是,那么继续下去也许是有意义的。如果答案是否定的,或者问题看起来太晦涩而没有答案,只需使用静态链接的 glibc 退出你的过期:它弊大于利。

关于c++ - Glibc 的静态链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14567689/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com