【问题标题】:How to make gcc link libssp statically?如何静态地使 gcc 链接 libssp?
【发布时间】:2013-07-30 14:00:26
【问题描述】:

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

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

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

【问题讨论】:

标签: linux gcc


【解决方案1】:

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

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

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

你使用的是什么版本的 gcc?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多