在Ubuntu 18.04上安装gcc-9?

gcc-9 刚刚 发布

我想知道是否有一个允许我在 Ubuntu 18.04 LTS (bionic) 上安装 gcc 9 的存储库?

似乎有支持 disco 的存储库:

https://packages.ubuntu.com/disco/gcc-9-base

但是我喜欢在当前的LTS上使用一段时间。

1相关链接:https://askubuntu.com/questions/466651/how-do-i-use-the-latest-gcc-on-ubuntu - Ciro Santilli OurBigBook.com
2个回答

现在ubuntu-toolchain-r也可用了。
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt install gcc-9

如果找不到add-apt-repository命令,请运行以下命令:
sudo apt install software-properties-common

上述命令只安装了C编译器,如果您还需要C++编译器(g++),请执行以下命令。
sudo apt install g++-9

35只是提醒一下阅读此内容的人们:sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60 --slave /usr/bin/g++ g++ /usr/bin/g++-9 - JHBonarius
13为了让@JHBonarius的有用评论更完整,您需要安装g++和gcc,即sudo apt install gcc-9 g++-9 - user1507435
@JHBonarius:你的命令是做什么的? - Tor Klingberg
6@TorKlingberg,通过在Ubuntu 18.04中执行apt install gcc-9 g++-9命令,可以安装带有名称gcc-9g++-9的二进制文件。如果你想使用gccg++,那么update-alternatives提供了一种方便的方法来实现。而且,如果你有多个不同版本的gcc(而不仅仅是gcc),你可以为每个版本创建备选项,然后轻松地在它们之间切换。 - ISanych
在Bionic上无法工作:以下软件包存在未满足的依赖关系: gcc-9-multilib:依赖于libc6-dev-i386(>= 2.11),但不会安装 依赖于libc6-dev-x32(>= 2.11),但不会安装 lib32gcc-9-dev:依赖于lib32gcc-s1(>= 9.3.0-11ubuntu0~18.04.1),但不会安装 (...) libx32gcc-9-dev:依赖于lib32gcc-s1(>= 9.3.0-11ubuntu0~18.04.1),但不会安装 (...) E: 无法纠正问题,您有损坏的软件包。 - Henrique de Sousa
1@HenriquedeSousa,我刚在Docker中进行了测试,安装仍然正常。要么你安装了其他冲突的软件,要么你的软件包数据库出现了问题。 - ISanych
是的,我不得不使用“aptitude”来强制安装,然后它就可以了。“apt”单独无法安装它。 - Henrique de Sousa
我将内核升级到了5.3.0-050300-generic,虚拟机多人游戏需要这个版本的gcc,一切都运行得非常顺利! - Manuel Lazo

我使用了一个搜索工具来查找PPA,使用在launchpad.net上搜索,并找到了JonathonF的GCC 9.0 PPA。您可以通过以下方式安装这个软件包:
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:jonathonf/gcc
sudo apt-get update
sudo apt-get install gcc-9

感谢澄清。我已相应地将PPA更改为“软件仓库”。 - tinlyx
编辑了我的回答,并删除了关于PPA和软件仓库的信息(为了更加中立)。 - N0rbert
1注意:在安装之前,您需要执行sudo apt-get update命令进行更新。 - EntangledLoops
为什么?据我所知,在调用 add-apt-repository 之后会自动更新。 - Zheng Qu
1@ZhengQu 是的,看起来这是18.04中的另一项变化。当时我正在运行16.04版本。 - EntangledLoops
这个命令给我返回了一个错误信息:无法添加PPA:'ppa:~jonathonf/ubuntu/gcc-9.0'。 错误:'~jonathonf' 用户或团队不存在。 这个回答是否已经过时了? - Soylent Graham
在执行add-apt-repository ...之前,先运行sudo apt-get install software-properties-common可以解决这个问题。 - Soylent Graham
我不确定过去一周发生了什么事情,但是重新部署后,gcc-9似乎消失了(g++-9仍然可以安装)。 - Soylent Graham
编辑:在Ubuntu 18.04.4(Jetson Nano)上使用add-apt-repository之后,我需要运行sudo apt-get update - Soylent Graham
这个已经不起作用了,还有其他的源代码仓库吗?名为“~jonathonf”的用户没有名为“ubuntu/gcc-9.0”的PPA。 请从以下可用的PPA中选择: - Lenny D
谢谢,@LennyD。回答已更新。 - N0rbert
1现在出现了E: 无法找到软件包 gcc-9的错误,在Debian GNU/Linux 10 (buster)上。 - Soylent Graham
这个已经不起作用了。和@SoylentGraham一样的输出结果。 - pookie
Debian在这里不是相关话题。刚刚在支持的Ubuntu 18.04.6 LTS上进行了测试,所有命令都正常工作;*gcc版本为9.2.1 20191109 (Ubuntu 9.2.1-19ubuntu1~18.04.york0)*。你应该在其他网站上寻求关于Debian的支持。 - N0rbert