この回答に基づいて、 GDBのプリティプリントを設定しようとしました(標準コンテナでの作業を簡単にするため)。svnのpython pretty printersコードを使用する代わりに、ubuntuに同梱されているものを使用しました。残りのプロセスを実行した後、gdbを起動すると次のエラーメッセージが表示されました。
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Traceback (most recent call last):
File "<string>", line 3, in <module>
File "/home/nietaki/gdb_printers/python/libstdcxx/v6/printers.py", line 54
raise ValueError, "Cannot find type %s::%s" % (str(orig), name)
^
SyntaxError: invalid syntax
/home/nietaki/.gdbinit:6: Error in sourced command file:
Error while executing Python code.
問題をもう少し詳しく調べたところ、根本的な原因がさらに深いことがわかりました。gdbで使用されているPython 3は、libstdc ++のプリティプリンターと互換性がありません。
誰かがそのための機能的な回避策を持っていますか?今のところ、Dan Marinescuのヘルパー(便利ですが、機能的ではありません)に悩まされています。http://www.yolinux.com/TUTORIALS/GDB-Commands.html#STLDEREF
2つの質問があります。1つ目は、Ask Ubuntuが適切な場所であり、その理由は何ですか。次に、これはアプリケーションのバグではありませんか?どちらの場合も、トピックから外れています。
—
Lucio
これはトピック外ですか?私は問題を引き起こすUbuntuランチパッドからの確認済みの重要度の高いバグをリンクし、回避策を求めました。13.10を使用している人がこれを機能させることができれば、私は確かにそのソリューションを使用できます。Gentooを利用している友人に確認しましたが、この問題は彼らには影響しません。
—
nietaki 2014年