Stačí znovu sestavit gdb s podporou cílové platformy. K tomu můžete použít Cygwin. Příklad pro cílovou platformu RHEL:
> wget http://ftp.gnu.org/gnu/gdb/gdb-<ver>.tar.xz
> tar -xJvf gdb-<ver>.tar.xz
> mkdir -p gdb-<ver>/build/x86_64-redhat-linux-gnu
> cd gdb-<ver>/build/x86_64-redhat-linux-gnu
> ../../configure --target=x86_64-redhat-linux-gnu
> make && make install
> x86_64-redhat-linux-gnu-gdb.exe --version
Poté nezapomeňte znovu nakonfigurovat svůj toolchain. Chcete-li získat název cílové konfigurace, můžete použít:
> echo ${BASH_VERSINFO[5]}
Nyní existuje pluginhttp://marketplace.eclipse.org/content/direct-remote-c-debugging
Což vám umožňuje spouštět gdb na serveru vzdáleně přes ssh. Stará se o mapování cest a další věci.
Nepotřebujete, aby server gdb běžel vzdáleně
Nepodařilo se mi postavit na Windows, ale zjistil jsem, že je docela snadné je postavit pod Linuxem. Abychom shrnuli a dokončili odpověď @Eugene:Nejprve si připravte zdroje:
wget http://ftp.gnu.org/gnu/gdb/gdb-<ver>.tar.xz
tar -xJvf gdb-<ver>.tar.xz
mkdir -p gdb-<ver>/build/x86_64-redhat-linux-gnu
cd gdb-<ver>/build/x86_64-redhat-linux-gnu
Stáhněte si kompilátor Windows:
sudo apt-get install mingw-w64
Podívejte se na cílovou konfigurační platformu, na které chcete ladit své binární soubory (co vložit do parametru --target):
echo ${BASH_VERSINFO[5]}
Připravte si makefiles cílené pro vaši požadovanou platformu, ale běžící na jiném hostiteli. Kompilujeme jej staticky, takže nezávisí na žádných DLL nebo jiných knihovnách. Také deaktivujeme vytváření dalších binárních souborů, jak navrhuje gdb wiki:
../../configure --host=x86_64-w64-mingw32 --target=x86_64-pc-linux-gnu --enable-static=yes --disable-interprocess-agent --disable-binutils --disable-ld --disable-gold --disable-gas --disable-sim --disable-gprof
nakonec sestavte (trvá to 30–60 minut):
make LDFLAGS=-static
Svůj debugger najdete ve složce gdb. Je také dobré jej zbavit ladicích symbolů, protože po sestavení spustitelného souboru je obrovský:
strip -s gdb/gdb.exe
Voila! gdb.exe připraven ke spuštění ve Windows a vzdálenému ladění spustitelných souborů Linuxu!