Antwort1
Wenn Sie die 32-Bit-Anwendung auf 64-Bit-Ubuntu debuggen möchten. Probieren Sie es aus.
sudo apt-get install gdb-multiarch
Antwort2
Ich habe das gleiche Problem. Nach Tests mit verschiedenen Setups und Maschinen bin ich zu dem Schluss gekommen, dass die mit Ubuntu 18.04 ausgelieferte GDB-Version (8.1) fehlerhaft ist. Neuere Versionen von GDB scheinen einwandfrei zu funktionieren (das heißt: Sie sehen diese seltsamen Warnungen nicht + GDB bleibt beim Debuggen von 32-Bit-Programmen nicht hängen).
Ich habe es auf Ubuntu 19.04 versucht, das mit gdb 8.2 ausgeliefert wird, und es funktioniert sofort einwandfrei. Ich habe auch versucht, die neueste Version (zum Zeitpunkt des Schreibens: 8.3.1) zu kompilieren, und es funktioniert einwandfrei (sogar auf Ubuntu 18.04).
Mein Vorschlag ist, die neueste Version von gdb (zum Zeitpunkt des Schreibens: 8.3.1) zu verwenden und sie selbst zu kompilieren. Sie können die Quellpakete hier herunterladen:https://mirrors.kernel.org/sourceware/gdb/releases/.
Eine weitere (sehr) subideale Lösung, die zu funktionieren scheint: Sie können das gdb:i386
Paket installieren, das gdb für 32-Bit-Anwendungen installiert.es wird gdb für 64bits deinstallieren, was Sie vielleicht nicht tun möchten.
Ich habe keine Ahnung, was das zugrunde liegende Problem ist und ob es eine schnelle Möglichkeit gibt, es zu beheben.