【问题标题】:How to Install GCC 2.95 on Ubuntu 12.0.4? [closed]如何在 Ubuntu 12.0.4 上安装 GCC 2.95? [关闭]
【发布时间】:2012-12-21 03:01:21
【问题描述】:

我正在尝试在 Ubuntu 12.0.4 上安装 GCC 2.95。这是错误

decl.c : in function 'start_struct': 4449:27; argument 'code' doesn't match prototype

ch-tree.h: 736:13: error: prototype declaration

我试过了:

./configure
make(失败)

如何解决这些错误并在 Ubuntu 12.0.4 上安装 GCC 2.95?

【问题讨论】:

  • 源码的根文件夹中没有经过所有安装步骤的 README 文件吗...?
  • 是的,我关注了,但问题是它到目前为止还没有成功编译。附上一些你可以查看的错误。
  • 您为什么要在当前版本的 Linux 上安装已有十年历史的编译器? (我的 2.95.3 源代码副本的最新修改日期为 2001-03-16,所以这已经超过十年了。)您使用哪个编译器版本来引导您的构建?
  • 我正在尝试使用它为一些晦涩的嵌入式系统重新编译旧内核,该内核不支持使用我最旧的可用编译器 (GCC 4.7) 进行编译

标签: c++ c gcc ubuntu compilation


【解决方案1】:

我的理论是您构建错误。你看说明了吗?

我认为您需要运行./configure,然后运行make bootstrap。已经有一段时间了(至少 12 年!),但我认为这会奏效。

不同之处在于,bootstrap 将构建一个微小版本的 GCC,然后构建 GCC,然后再次构建 GCC。当然这比 make 慢,但它应该能够从任何 K&R C 编译器开始构建 GCC。

【讨论】:

  • 我尝试使用 make bootstrap 结果如下:/usr/include/unistd.h:610: bits/confname.h: No such file or directory make[2]: *** [libgcc2 .a] 错误 1 ​​make[2]: Leaving directory /home/shazzad/gcc-2.95/objdir/gcc' make[1]: *** [bootstrap] Error 2 make[1]: Leaving directory /home/shazzad/gcc-2.95/objdir/gcc' make: *** [bootstrap] Error 2。我检查了在“ usr/include/i386-linux-gnu/bits ”中找到的 bits/confname.h 但 /usr/include/unistd.h 包括“ bits/confname.h ”,例如 #include ,
  • 我认为你不能从 gcc 2.95 的源目录运行./configure。你需要做一些事情,比如创建你自己的名为 build 的子目录,然后 cd 进入它并运行../configure。我不能 100% 确定,因为我构建 gcc 2.95 已经有 7 年左右的时间了,但我似乎记得 gcc 过去对不在源代码树中就地构建非常挑剔。
  • 哦,是的,我使用了不同的 objdir 然后运行 ​​"/home/gcc-2.95/configure" 但是从错误中可以明显看出 /usr/include/unistd.h 在寻找 confname.h到 /usr/include/bits 目录,但“bits”文件夹位于不同的位置 /usr/include/i386-linux-gnu 。可能是使用这种路径的最新版本的 linux。真的不知道怎么解决。你在哪个 linux 版本上安装了 gcc-2.95?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-02-08
  • 1970-01-01
  • 2022-07-01
  • 2014-12-09
  • 2012-02-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多