dev(UML-981): Добавил скрипт обновления gdb

This commit is contained in:
Vadim Sychev 2022-07-15 09:44:07 +03:00
parent c9fe825657
commit 714548ef91
2 changed files with 42 additions and 0 deletions

37
debug_support/gdb_update.sh Executable file
View File

@ -0,0 +1,37 @@
#!/usr/bin/env sh
# Motivation: build gdb 12.1 from source because of this issue: https://github.com/Gallopsled/pwntools/issues/1783
# Optional: remove existing gdb
echo ">>>> remove existing gdb:"
echo ">>>> sudo apt remove gdb gdbserver"
#sudo apt remove gdb gdbserver
# Get latest source from https://ftp.gnu.org/gnu/gdb/
echo ">>>> Get latest source from https://ftp.gnu.org/gnu/gdb/:"
echo ">>>> wget https://ftp.gnu.org/gnu/gdb/gdb-12.1.tar.xz"
wget https://ftp.gnu.org/gnu/gdb/gdb-12.1.tar.xz
echo ">>>> tar xf gdb-12.1.tar.xz"
tar xf gdb-12.1.tar.xz
# Install necessary build tools
echo ">>>> Install necessary build tools:"
echo ">>>> sudo apt install -y build-essential texinfo bison flex"
sudo apt install -y build-essential texinfo bison flex python3-dev libgmp-dev
echo ">>>> cd gdb-12.1"
cd gdb-12.1
echo ">>>> Configure with python3 support"
echo ">>>> ./configure --with-python=/usr/bin/python3"
# Configure with python3 support
./configure --with-python=/usr/bin/python3
# Build (this takes a while)
echo ">>>> Build (this takes a while)"
echo ">>>> make -j8"
make -j8
# Install binary
echo ">>>> Install binary:"
echo ">>>> sudo make install"
sudo make install

View File

@ -13,3 +13,8 @@ sudo chmod -x debug_support/gdb
-i - eth-интерфейс к которому подключен Profinet мастер
-v - уровень логов, чтобы был Debug нужно указать 4 раза
-p - папка для хранения настроечных файлов
Если версия Ubuntu 22.04, то там есть баг с gdb - он падает при переключении на другой поток в отлажеваемом ПО
Для исправления нужно либо установить Ubuntu 22.10, либо собрать gdb 12.1.
Для сборки запустить скрипт gdb_update.sh