下载源码
gdb源码可选最新的,接下来执行以下命令:
tar -zxvf gdb-10.2.tar.gz
cd gdb-10.2/
mkdir build
cd build
../configure --with-python=/usr/bin/python3.5 --enable-targets=all
make && make install
make 过程会有点长,一般会出现下面的错误:
WARNING: 'makeinfo' is missing on your system.
You should only need it if you modified a '.texi' file, or
any other file indirectly affecting the aspect of the manual.
You might want to install the Texinfo package:
<http://www.gnu.org/software/texinfo/>
The spurious makeinfo call might also be the consequence of
using a buggy 'make' (AIX, DU, IRIX), in which case you might
want to install GNU make:
<http://www.gnu.org/software/make/>
make[5]: *** [gdb.info] Error 127
make[5]: Leaving directory `/root/gcc-6.2.0/contrib/gdb-7.12/gdb/doc'
make[4]: *** [subdir_do] Error 1
make[4]: Leaving directory `/root/gcc-6.2.0/contrib/gdb-7.12/gdb'
make[3]: *** [install-only] Error 2
make[3]: Leaving directory `/root/gcc-6.2.0/contrib/gdb-7.12/gdb'
make[2]: *** [install] Error 2
make[2]: Leaving directory `/root/gcc-6.2.0/contrib/gdb-7.12/gdb'
make[1]: *** [install-gdb] Error 2
make[1]: Leaving directory `/root/gcc-6.2.0/contrib/gdb-7.12'
make: *** [install] Error 2
提示安装Texinfo。
ubuntu直接apt install texinfo
centos直接yum install texinfo
然后接着make && make install
一般就没什么问题了。
接下来就是替换老版本,新生成的gdb二进制文件会在编译目录gdb-10.2/gdb/gdb ,将其拷贝到/usr/bin/,替换原来的,也可以将原来的做个备份,以防出问题,以下命令:
mv /usr/local/bin/gdb /usr/local/bin/gdb_bak
cp ~/gdb-10.2/gdb/gdb /usr/local/bin/
查看gdb版本gdb -v
➜ ~/gdb-10.2/gdb$ gdb -v
GNU gdb (GDB) 10.2
Copyright (C) 2021 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
完成。