我正在尝试在我的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
图像是否可用。]
答案 0 :(得分:2)
我解决了这个问题。我按照以下程序:
[注意:如果您没有以root身份登录,使用sudo
运行所有命令。例如sudo ls -ltr; sudo make install;
gcc4.6...tar
文件在临时的地方gcc
。例如我早些时候
gcc4.4
已存储在
/usr/lib/gcc/i486-linux-gnu
。哪一个
有一个名为4.4
,4.4.1
4.6
的文件夹(或
4.6.1/2/3
等等,并把它
里面有.tar
个文件。解开
文件如链接所示。nohup <command> &
来
跟踪日志。即nohup make
clean all &
后跟tail -f
nohup.out
gcc
版本。您可以
自己安装它们。对于
例如,在我的情况下zlib
是
失踪。我跑了sudo apt-get install
zlib1g-dev libssl-dev
并且有效
精细。否则从互联网下载并安装。gcc
后,即可
可以使用type
gcc-4.6
进行检查。就我而言,它表明了这一点
它被存储为
/usr/local/bin/g++-4.6
。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二进制文件。