在没有c编译器的Linux上安装gcc

ham*_*mSh 14 linux gcc

如何在没有任何c编译器的系统上安装gcc?这个系统是linux基础防火墙,没有任何c编译器.

Ian*_*anH 14

我猜你有一个运行Linux和shell访问的设备,但是既没有安装包管理器也没有安装编译器.

所以,你需要交叉编译gcc和整个工具链(至少是binutils) - 这很简单,因为./configuregcc,binutils,gdb等脚本支持使用该--target=选项进行交叉编译.因此,您所要做的就是找出目标架构(uname帮助),然后下载,在Linux主机上解压缩gcc源代码并运行./configure --target=$YOUR_TARGET.

有了这个,您现在可以构建一个交叉编译器gcc - 它仍然在您的主机上运行,​​但为您的目标(防火墙设备)生成二进制文件.

这可能已经足够您,典型的台式PC比典型的设备快得多,因此使用交叉编译器和跨binutils在桌面PC上编译所需的一切可能是有意义的.

但是如果您真的希望这样做,您现在也可以使用交叉编译器编译在目标上运行的gcc(将其设置为--host=选项)并为目标进行编译(将其设置为--target选项).

您可以在gcc文档中找到有关允许的主机/目标和示例的详细信息:http://gcc.gnu.org/install/specific.html.