64bit Windows(host) - CentOS 7(target)のgdb作成手順
Windowsホスト上でCentOS 7上のプロセスをリモートデバッグするためのクロスターゲット用gdbを作ります。開発環境はWindowsホスト上の MSYS MinGW 64bit を使います。
1. GNUのサイトからgdbのソースtarball(gdb-7.6.1.tar.gz)を入手する。
2. windows-termcap.o をリンクさせないためのパッチファイルを用意する。
$ ls gdb-7.6.1.tar.gz gdb-mingw64-configure.patch [gdb-mingw64-configure.patch] --- gdb/configure.org +++ gdb/configure @@ -6960,7 +6960,6 @@ ;; *mingw32*) ac_cv_search_tgetent="none required" - CONFIG_OBS="$CONFIG_OBS windows-termcap.o" ;; esac
3. gdbのソースを展開してパッチをあてる。
$ tar xvf gdb-7.6.1.tar.gz $ cd gdb-7.6.1 $ patch -p0 < ../gdb-mingw64-configure.patch
4. gdbをビルドする。ビルドが成功すれば /opt/centos7/bin/x86_64-unknown-linux-gnu-gdb.exe ができる。
$ mkdir build $ cd build $ ../configure --target=x86_64-unknown-linux-gnu --disable-werror --with-expat --prefix=/opt/centos7 $ make -j4 && make install
4. CentOS7上でgdbserverを起動しておき、クロスターゲット用gdbからgdbserverにTCP/IP接続してリモートデバッグする。