2

我正在尝试在 RHEL6 虚拟机上从源代码构建 GCC,并且遇到了 Catch 22。也就是说,我需要一个 C 编译器才能成功配置。解决方案似乎很简单——执行 yum 来解决依赖关系。但是,此虚拟机无法连接 Internet。

有没有人有任何包含预编译编译器的二进制文件或 .rpm 的源代码,从而简化了安装?我已经搜索过,但找不到一个。或者,是否存在 RHEL6 命令来安装 GCC 的预编译版本?如果两者都不可能,我可以使用哪些 C 编译器来解决这个问题?

对于上下文,这是我收到的消息:

../gcc-4.7.2/configure
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln works... yes
checking whether ln -s works... yes
checking for a sed that does not truncate output... /bin/sed
checking for gawk... gawk
checking for libitm support... yes
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/gcc/gcc-build':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.
4

2 回答 2

2

如果您的 VM 上未安装任何 C 编译器,则无法编译 gcc 源代码。

如果您可以将文件从主机转换为虚拟机,那么您有两种方法:

  1. 在您的主机上编译源代码并将它们复制到您的 VM。用于./configure --prefix=/<path>/<to>/<output>指定输出目录。如果您的 VM CPU 架构与您的主机不同,您可能需要查看交叉编译。

  2. 从 Redhat 的 rpm 存储库镜像下载 gcc rpm 包。在谷歌搜索它,你会得到答案。

但是在 RHEL 中使用yumrpm安装软件总是一个好主意。我对您的问题有一些疑问:

  1. 为什么你的 RHEL6 上没有安装 gcc?它是默认安装的。
  2. 你用的是什么虚拟机?您的问题的最佳解决方案可能是想办法让您的虚拟机中的网络可用。
于 2012-12-13T05:56:15.497 回答
0

由于您的 VM 上没有 Internet 访问权限,因此您可能无法使用依赖项解析yumrpm. 我假设您不想连接或无法将 VM 连接到 Internet。

从互联网连接的系统中,您可以在此处下载自包含的 GCC 预构建版本和工具链的其余部分:

IA32 GNU/Linux 原生编译器在这里:

您仍然需要找到一种方法将安装程序安装到您的 VM 上。

于 2012-12-13T18:20:29.240 回答