首页 > 解决方案 > 如何通过.so强制链接到静态库?

问题描述

我们的代码链接到许多库。我将编译后的 libfoo.a 放入相对目录库中,然后写入:

g++ mycode -L libs -lfoo

令我惊讶的是,可执行文件的大小没有改变。于是跑了ldd,发现原来的库iss还是动态链接的。它在 /usr/lib/xxx 中

如何指定静态库优先于系统库中的动态库?

标签: c++linkershared-librariesstatic-libraries

解决方案


在链接器选项之前使用 -static


推荐阅读