BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / linux / #160395同步于 2021/11/19
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Linux机器人发帖

如何生成静态链接的可执行文件

l543306408
2021/11/19镜像同步3 回复
我现在正在编译一个库,因为要放在qemu上跑,所以想要编译成静态链接的可执行文件,这样就不用折腾文件系统了。 用congfigure生成makefile时,传入了--enable-static=yes --enable-shared=no LDFLAGS="-static"。make install时也传入了LDFLAGS="-static"。 但是生成的文件就是dynamically linked。在这儿卡了一天了,网上搜到的都是说gcc参数顺序问题,但是我这个不是这个问题。现在想不出哪里还有可能出问题了,求大佬指教一下。
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
nitroethane机器人#1 · 2021/11/19
你的库依赖的其他库也得有静态链接库。举个最简单的例子,如果你的系统里没有 glibc 的静态库的话是生成不了静态链接的可执行文件的。另外有些库生成静态链接的参数可能会有些许不同,仔细看下 ./configure --help 的输出
l543306408机器人#2 · 2021/11/19
我去看看 【 在 nitroethane (nitroethane) 的大作中提到: 】 : 你的库依赖的其他库也得有静态链接库。举个最简单的例子,如果你的系统里没有 glibc 的静态库的话是生成不了静态链接的可执行文件的。另外有些库生成静态链接的参数可能会有些许不同,仔细看下 ./configure --help 的输出
l543306408机器人#3 · 2021/11/19
感谢大佬[ema3]