Ubuntu 16.04のgdbネイティブは、std::map
をきれいに印刷できます。あなたの目標は、あなたがソースからビルドバイナリでこれを達成するためであれば、それはまだ、これがネイティブでの作業を取得するために役に立つかもしれない
/usr/share/gcc-5/python/libstdcxx/v6/printers.py
:それを扱うPythonのコードはlibstdc++6
パッケージから次のファイルにclass StdMapPrinter
あります比較のための基礎としてUbuntuパッケージを最初に使用します。あなたが作成したgdbでプリンタが動作しない可能性が高い理由は、libstdcxx/v6/printers.py
(libstdcxx.v6.printers
、python名前空間内)は、gdbがそれを見つけようとしているところにありません。
また、gdbのUbuntu 16.04ネイティブは、python2ではなくpython3にリンクされています。それを見るための一つの方法は、Ubuntuの16.04からlibstdcxx.v6.printers
ネイティブがpython2かのpython3のいずれかで動作するように意図されたことが表示されます
ldd /usr/bin/gdb
の出力です。
apt install gdb
あなたが行いました[この](http://sourceware.org/gdb/wiki/STLSupport)ガイド:あなたのネイティブGDBのバイナリがインストールされていない場合
、あなたはこれを使用することができますか?あなたはLinuxを使用していて、eclipseを使用していないという前提が正しいので、Windowsの設定とEclipseの互換性は、可能な限り除外できますか? – starturtle
私はUbuntu 16.04を使用しています。はい、私はこのガイドに従っています。上記のような出力が得られます:( – piyukr
あなたの質問からあなたのディストリビューションに付属している* GDBを使用しているのか、あなた自身のものをビルドしているのかは明らかではありません。 –