【发布时间】:2016-12-12 11:30:57
【问题描述】:
有什么方法可以构建静态链接的 gcc 编译器吗?如果是,我应该使用哪些配置/制作标志?我希望得到 gcc 和 g++ 二进制文件 这应该是“不是动态可执行文件”(在使用 ldd 检查时 工具,例如)。
【问题讨论】:
-
使用
--static标志是一个很好的起点。 -
你检查过the documentation吗?你看到那些
--enable-*和--with-*标志了吗?你知道你可以分别用--disable-*和--without-*来反转它们吗? -
你确定这是你想要的吗? 为什么?不只是您想使用 gcc 链接静态可执行文件吗?
-
禁用所有共享选项是一个好的开始。然后使用例如可以使用
--with-stage1-ldflags和--with-boot-ldflags设置链接器标志以静态链接。 -
@Someprogrammerdude 非常感谢!有效!你能把它变成答案吗?这里使用了配置标志:../configure --prefix=/home/myuser/soft/gcc-6.2.0/myusr/ --enable-multilib --enable-languages=c,c++ --disable-shared --禁用主机共享 --with-boot-ldflags=-static --with-stage1-ldflags=-static
标签: linux gcc makefile configure