我目前安装了 Ubuntu 10.04 32 位gcc 4.4.3
。我想将其升级到gcc/g++ 4.7
(我正在寻找 C++ 0x 支持)
如何使用 Ubuntu 软件包管理器进行更新:
apt-get upgrade/install ??
作为第二种选择,我从以下位置下载了最新的 gcc 快照文件:
http://gcc.cybermirror.org/snapshots/LATEST-4.7/gcc-4.7-20110709.tar.bz2
会做
./configure
make
make install
在此包上从源代码构建并安装它?
答案1
12.04
添加工具链 ppa 测试存储库,然后执行 apt-get update 和 apt-get dist-upgrade
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-4.7 c++-4.7
这仅适用于 12.04 - 旧版 ubuntu 无法使用此方法更新到同一版本。
有关 PPA 的更多信息,请参阅此处
https://help.launchpad.net/Packaging/PPA
答案2
sudo apt-get install gcc-snapshot
然后,使用以下命令调用它:
/usr/lib/gcc-snapshot/bin/gcc
对于问题的第二部分,答案是“是的,有点”。如果你真的想要这样做(即安装 gcc-snapshot 包是不够的)那么您需要安装依赖项:
sudo apt-get build-dep gcc-snapshot
然后,找到正确的配置选项:
gcc -v
(以及修改安装路径等)
然后,像这样构建:
mkdir objdir
cd objdir
../gcc-src-dir/configure ......insert..options..here...
make
make install
答案3
10.04 LTS
使用以下命令安装添加 apt 存储库:
apt-get install python-software-properties
然后添加 tooclain ppa 测试 repo和 12.04 LTS 一样。
答案4
如何编译最新的gcc:
apt-get update && apt-get -qq --no-install-recommends install build-essential git grep \
&& mkdir gcc-latest && cd gcc-latest \
&& git init && git remote add origin git://gcc.gnu.org/git/gcc.git \
&& git fetch --depth=1 --tags --no-recurse-submodules --quiet \
&& git tag -l | grep '^releases/gcc' | sort --version-sort --field-separator=- -k2 | tail -1 | xargs git checkout \
&& ./contrib/download_prerequisites && ./configure --disable-multilib && make -j 4 && make install
上述脚本的作用是:
- 安装/更新编译最新 gcc 所需的工具,例如 make、old-stable gcc 等等;
- 准备一个游乐场(目录)gcc-latest;
- 找到最新的gcc版本并下载;
- 配置环境,编译并安装gcc。
顺便说一句。如果您在 RAM 空间较小的低端 VPS 上运行此脚本,请记住在运行 gcc 编译/安装脚本之前分配足够的交换空间:
dd if=/dev/zero of=/swapfile bs=100M count=20 \
&& chmod 0600 /swapfile \
&& mkswap /swapfile \
&& swapon /swapfile \
&& echo "swapon /swapfile" >> /etc/rc.local