我有两个Ubuntu 18.04我办公室里有两台用于开发工作的服务器,我们安装了 GNU 调试器。所有这些软件包都是使用“sudo apt install”命令安装的。不知何故,其中一台服务器的 gdb 版本比另一台服务器的要新。
#DVLP1
# sudo apt list --installed |grep ^gdb/
gdb/bionic-updates,now 8.1.1-0ubuntu1 amd64 [installed]
# sudo apt-cache policy gdb
gdb:
Installed: 8.1.1-0ubuntu1
Candidate: 8.1.1-0ubuntu1
Version table:
*** 8.1.1-0ubuntu1 500
500 http://us.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages
100 /var/lib/dpkg/status
8.1-0ubuntu3 500
500 http://us.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
#DVLP2
# sudo apt list --installed |grep ^gdb/
gdb/bionic,now 8.2-0ubuntu1~18.04 amd64 [installed]
# sudo apt-cache policy gdb
gdb:
Installed: 8.2-0ubuntu1~18.04
Candidate: 8.2-0ubuntu1~18.04
Version table:
*** 8.2-0ubuntu1~18.04 500
500 http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu bionic/main amd64 Packages
100 /var/lib/dpkg/status
8.1.1-0ubuntu1 500
500 http://us.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages
8.1-0ubuntu3 500
500 http://us.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
DVLP1 上的一些开发人员抱怨说,他们收到了以下警告,但在 DVLP2 上使用 gdb 时却没有收到此警告:
==28205==HINT: LeakSanitizer does not work under ptrace (strace, gdb, etc)
我唯一能看到的不同之处是 gdb,所以我打算尝试在两个系统上将其升级到相同的版本。虽然第一个系统的存储库中列出了 gdb 版本 8.2,但第二个系统上仍然只显示版本 8.1.1 是最新版本。
我猜这与我们下载的所选存储库有关。我注意到一个框使用“archive.ubuntu.com”,另一个框使用“us.archive.ubuntu.com”作为 bionic main。但是,即使在我将 sources.list 更改为具有相同的 deb 条目(并执行 apt 更新)后,它也没有显示高于 gdb 8.1.1 的版本
此时,有没有一种简单的方法可以让我安装 DVLP2 的 apt-cache 中列出但 DVLP1 中没有的软件包?看起来 8.2 版本源自 ppa.launchpad.net,但我不记得有这个 deb 条目。如果我想尝试该副本,我该如何将其添加到 sources.list(我可以信任其内容吗)?
谢谢史蒂夫
答案1
ppa.launchpad.net
表示该软件包是从电力供应协议。
运行脚本 答案中的第一个,然后在第二台机器上运行提供的命令
编辑:我能够使用以下链接挖掘 PPA http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu在版本表中
您可以添加使用
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
将输出:
You are about to add the following PPA:
Toolchain test builds; see https://wiki.ubuntu.com/ToolChain
More info: https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test
Press Enter to continue or Ctrl+C to cancel
之后sudo apt update
您将能够使用 v。8.2