如何将 GDB 更新到最新的稳定版本

How to update GDB to most current, stable version

我在 ubuntu 9 机器映像上使用 gdb 6.8 版。我想更新到最新版本(7.8?),但我不知道该怎么做。

我尝试按照此处的说明进行操作 https://askubuntu.com/questions/529781/upgrade-from-gdb-7-7-to-7-8,但没有用。

它在 tar 命令处停止并说 "this does not look a tar file"

有人可以帮忙吗?

谢谢

这只是一个猜测,但可能是因为您的 tar 版本太旧,不支持 xz 压缩方案。您引用的 link 建议下载 gdb-7.8.tar.xz,您可以尝试 运行 unxz gdb-7.8.tar.xz,这会将文件解压缩为 gdb-7.8.tar,然后您可以重试 tar -xf gdb-7.8.tar现在应该可以了。

或者您可以尝试下载此文件 http://ftp.gnu.org/gnu/gdb/gdb-7.8.2.tar.gz,与您之前使用的 7.8 相比,这是 7.8.2 版本,因此包含一些小错误修复,但是,此文件使用gzip 压缩方案,在 tar 中支持的时间比 xz 长,这个新文件应该可以用 tar -xf gdb-7.8.2.tar.gz.

解压

最后,您可能有兴趣完全跳过 7.8,直接进入 7.10 (http://ftp.gnu.org/gnu/gdb/gdb-7.10.tar.gz),因为它应该包含更多令人兴奋的新功能和改进。

在 Ubuntu 14.04 上将 GDB 从 7.7.1 更新到 8.2:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get -y --force-yes install gdb
gdb -v
sudo add-apt-repository --remove ppa:ubuntu-toolchain-r/test
sudo apt-get update

您还可以从 the official source code 自己构建和安装 GDB。但是请注意,在 Ubuntu 20 LTS 上,此过程存在一些问题。如果您动态 link C++ 库,那么您可能会得到错误 运行 GDB。一种解决方案是静态 link。这就是我在 Ubuntu 20.04.3 LTS(aka focal)x86_64 和 GDB 10.2 上的作用。这些说明假定您已下载 gdb-10.2.tar.gz(或您希望构建的任何版本)并将其移动到您的主目录中。

sudo apt update
sudo apt install build-essential texinfo
cd
tar -xvzf gdb-10.2.tar.gz
cd gdb-10.2
./configure
make CXXFLAGS="-static-libstdc++"
sudo make install
gdb --version

注意 >> 如果您在 运行 gdb --version 时注意到 python 错误 然后重新启动将解决此问题,甚至可能只是注销并重新登录。