0

Scons に基づいて既にビルドされている python プロジェクトがあります。

ソースコードのいくつかのバグを修正するために、Eclipse IDE と Pydev を使用しようとしています。

Eclipse Sconsolidator プラグインをインストールしました。

私のプロジェクトは以下のようなものです プロジェクト A すべてのソース コードには、すべてのタグ、環境などを定義する Sconscript ファイルが含まれます。

Eclipse は、Scons の性質をプロジェクトに追加してくれます。Scons を追加すると、Sconscript ファイルが自動的に取得されて実行されます。

== Running SCons at 10/28/13 1:59 PM ==

Command line: /opt/gcdistro/app/scons/2.3.0/bin/scons -u --jobs=16

scons: Reading SConscript files.

Scons が実行しているプロジェクトの一部である .py ファイルの一部にブレークポイントを配置する方法を知りたいです。

4

2 に答える 2

0

少し苦労した後、私は自分の質問に対する答えを見つけることができました。SCons はそれ自体が Python モジュールであるため、PyDev を使用して Eclipse でデバッグすることができます。これは私が望んでいた最適なソリューションではありませんが、最も近いものでした。

ステップ 1: プロジェクトの Eclipse SCons の性質を無効にしました。

ステップ 2: SCons と同じ機能を実行するが、SCons メイン関数の python オブジェクトをインスタンス化するメイン ファイルを作成しました。

ステップ 3: スクリプトの必要な場所にブレークポイントを設定すると、スクリプトを実行できました。

import os
import sys

if __name__ == '__main__':
    sys.path.append('/gpfs02/gcdistro/app/scons/2.3.0/engine/')
    sys.path.append('/gpfs02/gcdistro/app/scons/2.3.0/bin/')
    sys.path.append('/gpfs02/gcdistro/app/scons/2.3.0/engine/SCons/')
    import SCons
    from SCons import Script
    Script.main()
于 2013-10-29T08:41:12.077 に答える
0

SCons プロジェクトをデバッグするのは難しい場合があります。SConstruct または SConscript python スクリプトにあるものは、全体像の一部にすぎません。SCons は多段階の方法で構築します。最初にスクリプトを読み取ってツリーを構築し、次にそれらのツリーを分析して、構築に必要なものだけを構築します。そのため、Python スクリプトの読み取りである宣言部分のみをデバッグできる可能性があります。

他の python プログラムと同じようにデバッグしてみてください。

于 2013-10-28T15:23:09.747 に答える