3

如何让 GCC 使用该静态库而不是动态库?通常您将 .a 文件添加到链接器参数中。但是 libssp 链接是由 -fstack-protector 选项触发的。如果编译器找到共享库而不是静态库,则它更喜欢链接到共享库。

如果我尝试在没有 libssp.so 的系统上运行生成的程序,则该程序将无法运行。

(在某些构建机器上进行系统升级后,测试系统上的旧盒子搞砸了)

4

1 回答 1

5

gcc -static static.c -o static -fstack-protector-all

或者

gcc -static -lssp static.c -o static -fstack-protector-all

工作?您可以在生成的二进制文件上运行 ldd 吗?

你用的是什么版本的 gcc?

于 2013-07-30T15:18:06.120 回答