Eclipse から C++ ソースを印刷するときに得られる出力は、かなり醜いものです。
たとえば a2ps のように C++ ソース コードをきれいに印刷する方法/プラグインはありますか (これはおそらく C ソース コードに別のフィルターを使用しています)。
Eclipse から C++ ソースを印刷するときに得られる出力は、かなり醜いものです。
たとえば a2ps のように C++ ソース コードをきれいに印刷する方法/プラグインはありますか (これはおそらく C ソース コードに別のフィルターを使用しています)。
きれいな印刷エンジンとしてenscriptを使用するこのDDJの記事を参照してください。
私もこれに使っenscript
ています。私がよく使うエイリアスは次のとおりです。
alias cpp2ps='enscript --color --pretty-print=cpp --language=PostScript'
そして、私はそれを次のように使用します:
cpp2ps -P main.ps main.cpp
enscript
回転、2 列出力、行番号、ヘッダー/フッターなど、他にも優れたオプションがいくつかあります。enscript の man ページを確認してください。
また、Mac では、XCode は C++ コードを非常にうまく出力します。
いくつかの重要な手順が省略されているため、Windows 7 の対応について詳しく説明したいと思います。
0) Python GDB がない場合は、シェル/コマンドを開き、MinGW-get.exe を使用して Python 対応の GDB を「インストール」します。
MinGw-get.exe install gdb-python
1a) http://python.org/download/から Python 2.7.x を入手してインストールします。
1b) PYTHONPATH と PYTHONHOME が環境に設定されていることを確認します。
PYTHONPATH should be C:\Python27\Lib (or similar)
PYTHONHOME should be C:\Python27
1c) PYTHONHOME を PATH に追加します。
%PYTHONHOME%;...
2a) テキスト入力を開き、次のステートメントを入力します。3 行目は、python スクリプトが配置されている場所を指していることに注意してください。これについては、以下の注意事項を参照してください。
python
import sys
sys.path.insert(0, 'C:/MinGW/share/gcc-4.6.1/python')
from libstdcxx.v6.printers import register_libstdcxx_printers
register_libstdcxx_printers (None)
end
2b) 「.gdbinit」として保存 注: Windows エクスプローラーでは、ピリオドで始まるファイルに名前を付けることができません。ほとんどのテキスト編集 (メモ帳を含む) で可能です。GDB init ファイルは、ロード時に GBD が実行する GDB コマンドの「スクリプト」のようなものです。
2c) '.gdbinit' ファイルは GDB の作業ディレクトリにある必要があります (ほとんどの場合、これはプロジェクトのルート ディレクトリですが、IDE によって通知されます。
3) Eclipse (または他の IDE) の設定ダイアログを開きます。C++ デバッガーのサブメニューに移動します。
4) Eclipse を構成しC:\MinGW\bin\gdb-python27.exe
て、デバッガーとして使用し、構成.gdbinit
ファイルとして使用します。
5a) すべてのデバッグ起動構成を再作成します (古いものを削除し、新しいものを最初から作成します)。
--OR--
5b) 各デバッグ構成を編集し、それを新しい gdb-python.exe にポイントし、それを.
-- 上記の python コードで、場所を python ディレクトリに変更することを忘れないでください! このディレクトリは MinGW によって作成されるため、きれいなプリンターをダウンロードしようとしないでください。MinGW がステップ 0 でダウンロードしてくれます。MinGW インストール ディレクトリ、共有フォルダー、GCC フォルダー (バージョン番号あり) に移動するだけで、python フォルダーが見つかります。この場所は、GDB によってロードされた Python スクリプト内にあるべきものです。
-- また、.gdbinit は PITA です。名前が正しく、gdb-python.exe があるとは限らない GDB の作業フォルダーにあることを確認してください。GDB をロードするときに GDB 出力を見て、a) 'python-enabled' がロード中に表示され、.gdbinit のステートメントが表示されているかどうかを確認します。
--最後に、システム変数に多くの問題がありました。Python で「ImportError」が返された場合は、PYTHONPATH または PYTHONHOME が設定されていない可能性があります。
-- 'gdb-python27' を含むディレクトリ (例: C:\MinGW\bin') もパス上にある必要があります。そうであれば、絶対パスを入力する必要がないため、Eclipse のセットアップが少し楽になります。 . それでも、.gbdinit に絶対パスが必要な場合があります。これが機能する場合、デバッガーの起動時に次のような gbd (コンソール -> gdb トレース) からの出力が表示されます。
835,059 4^done
835,059 (gdb)
835,059 5-enable-pretty-printing
835,069 5^done
....
835,129 12^done
835,129 (gdb)
835,129 13source C:\MinGW\bin\.gdbinit
835,139 &"source C:\\MinGW\\bin\\.gdbinit\n"
835,142 13^done
835,142 (gdb)