在ubuntu上安装gcc 4.6的问题

时间:2011-06-16 13:24:22

标签: gcc ubuntu installation

我正在尝试在我的ubuntu 9.10(通过virtualbox)中安装gcc 4.6(主要是为了更好地支持C ++ 0x)。我提到了previous questions,但我得到了一个不同的错误。

我指的是this link for the installation。现在,我已经完成了./gcc-xx/configure ...步骤。虽然它给出了一些与flex包相关的错误。主要原因是make也失败了以下错误:

  

build / gengtype.o:在功能中   adjust_field_rtx_def': /home/milind/ubuntu_shared/GCC/build/gcc/../../gcc-4.6-20110610/gcc/gengtype.c:978: undefined reference to lexer_line”   /home/milind/ubuntu_shared/GCC/build/gcc/../../gcc-4.6-20110610/gcc/gengtype.c:1032:   未明确引用lexer_line' /home/milind/ubuntu_shared/GCC/build/gcc/../../gcc-4.6-20110610/gcc/gengtype.c:1042: undefined reference to lexer_line'...............

现在这让我很难搞清楚,因为我已经安装了flex/bison个最新版本。我几乎在互联网上搜索了2天但没有运气。任何帮助将非常感激。另请注意,我已在gcc 4.4中安装了/usr/bin/gcc,并且已在我的主目录本地文件夹中解压缩gcc 4.6 tar。

[注意:我也可以安装ubuntu 11.10(其中包含gcc 4.6)作为最后的手段。但我不知道它的.iso图像是否可用。]

2 个答案:

答案 0 :(得分:2)

我解决了这个问题。我按照以下程序: [注意:如果您没有以root身份登录,使用sudo运行所有命令。例如sudo ls -ltr; sudo make install;

  1. 正如我在我的链接中所提到的 问题,下载gcc4.6...tar 文件在临时的地方
  2. 现在找到当前的地方 存储gcc。例如我早些时候 gcc4.4已存储在 /usr/lib/gcc/i486-linux-gnu。哪一个 有一个名为4.44.4.1
  3. 的文件夹
  4. 创建一个名为4.6的文件夹(或 4.6.1/2/3等等,并把它 里面有.tar个文件。解开 文件如链接所示。
  5. 遵循所有程序 链接。使用nohup <command> &来 跟踪日志。即nohup make clean all &后跟tail -f nohup.out
  6. 如果出现错误,则表示有些错误 包丢失了。主要是那些 包裹将出现在您的 当前gcc版本。您可以 自己安装它们。对于 例如,在我的情况下zlib是 失踪。我跑了sudo apt-get install zlib1g-dev libssl-dev并且有效 精细。否则从互联网下载并安装。
  7. 安装gcc后,即可 可以使用type gcc-4.6进行检查。就我而言,它表明了这一点 它被存储为 /usr/local/bin/g++-4.6
  8. 您可以使用相同的路径 编译或你可以放入alias 你的bash/tcsh/ksh。例如 /usr/local/bin/g++-4.6 -std=c++0x -Wall test.cpp

答案 1 :(得分:1)

FWIW Debian测试和不稳定有gcc-4.6作为标准包。所以你可以简单地将这个发行版安装在virtualbox中,或者就像我在家里的Ubuntu 11.04服务器上通过kvm一样。在过去,我还习惯使用dchroot构建环境。

在启动板上可能还有预打包的gcc-4.6二进制文件。