我一直在阅读有关个人包裹档案('PPA') 的信息,人们通过指向 PPA 的链接来回答问题。使用这些的最佳方法是什么?
这个问题有多个有效答案,跨越多个版本的 Ubuntu。为方便起见,下面列出了每个索引。
我安装了 gcc 4.6.3:
gcc --version
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
Run Code Online (Sandbox Code Playgroud)
我安装了较新的版本:
apt-get install gcc-4.7
Run Code Online (Sandbox Code Playgroud)
但是当我输入时,我仍然得到结果“gcc 4.6.3” gcc --version。如何解决?
我正在使用 ubuntu 12.04,我已经完成了
sudo apt-get update
sudo apt-get upgrade
Run Code Online (Sandbox Code Playgroud) 所以我正在做一个项目,我想为 C 使用一些 C11 特性。要使用这些特性,GCC 4.7 是必需的,所以我去了突触并查找了 4.7,我找到了包 gcc-4.7-base 所以我安装它[1]。
所以现在安装了 gcc-4.7-base 我希望能够使用 4.7,但是不,当我这样做时gcc --version它仍然显示 4.6.3 甚至更多,当我尝试直接调用 4.7(via /usr/bin/gcc-4.7) 时它不存在,尽管gcc-4.6确实存在可执行文件。
如何“激活” GCC 4.7?我在这里读到,你用 做了一些疯狂的事情update-alternatives,但它对我不起作用,因为gcc-4.7可执行文件实际上并不存在于我的机器上。
注意: 1. 我也看到了 gcc-4.6-base,所以我想我会卸载它,但是 Synaptic 试图删除我安装的每个包并安装 Java 运行时,所以出于显而易见的原因我决定不删除它。
我正在使用 Ubuntu 12.04.3 LTS,64 位,带有 gcc 4.6.3
我想将 gcc 更新到 4.7,然后按照链接说的做:
但我得到了错误:
Fetched 14.0 MB in 18s (767 kB/s)
(Reading database ... 205536 files and directories currently installed.)
Preparing to replace libgcc1 1:4.6.3-1ubuntu5 (using .../libgcc1_1%3a4.8.1-2ubuntu1~12.04_amd64.deb) ...
Unpacking replacement libgcc1 ...
dpkg: error processing /var/cache/apt/archives/libgcc1_1%3a4.8.1-2ubuntu1~12.04_amd64.deb (--unpack):
trying to overwrite '/lib/x86_64-linux-gnu/libgcc_s.so.1', which is also in package gcc-4.6 4.6.3-1ubuntu5
Errors were encountered while processing:
/var/cache/apt/archives/libgcc1_1%3a4.8.1-2ubuntu1~12.04_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Run Code Online (Sandbox Code Playgroud)
所以我删除了 gcc 4.6:
sudo apt-get remove gcc-4.6 …Run Code Online (Sandbox Code Playgroud)