私は、C++からいくつかのライブラリを構築するためのSConsビルドシステムと、SWIG経由のPythonラッパーを用意しました。その後、結果はSConsビルドの一部でもあるデータ処理に使用されます。データ処理は、構築されたSWIGラップライブラリを使用するPythonスクリプトです。SConsソーススキャナの実行を遅らせるには?
すべてのライブラリとラッパーが構築された後にデータ処理が開始され、うまく機能するように依存関係を設定しました。しかし、警告があります(あなたはそれを推測しましたか?))。ソーススキャナを追加したいと思っています。ソーススキャナはSWIGライブラリのいくつかを使って依存関係を拡張しています。問題は、スキャナがすぐに実行されないことです。実際、私はそれが2回実行されているのを見ています - ある時点ではビルドの早い段階で、もう1つはデータ処理が始まる直前です。したがって、並列ビルドで実行される最初のスキャナは、通常、必要なライブラリがすべてビルドされる前に実行されるため、失敗します。
スキャナ自体をライブラリターゲットに依存させるにはどうすればよいですか?
または、スキャナの実行を遅らせたり、最初のスキャナの実行を取り除いたりできますか?
他のアイデアはありますか?
だからあなたが働きたいのは、あなたがsconsでPythonモジュール(コンパイル済み)を構築し、そのモジュールをsconsにロードして使用するということですか? – bdbaddog
はい、基本的に。スキャナーでのみ使用し、配合物自体を作るのではありません。スキャナがターゲットを構築する直前にのみ実行された場合、正常に動作します。 –