私の目標はboost::test
ユニットテストをSCons
で実行することです。この問題はscons -c
コマンドの後にエラー破壊に対する追従しているSConsの実行順序が奇妙です
prgs = env.Program('model_test_exe',
'ModelTest.cpp',
LIBPATH = [boost_lib, python_lib],
LIBS = [modellib])
Return('prgs')
:プログラムを返しnextTest
に割り当てられ
for t in toTest:
nextTest = SConscript('#/test/' + t + '/SConscript',
variant_dir = test_dir + t,
duplicate = 0)
for a in nextTest:
import subprocess
subprocess.call(a.abspath)
Sconscript
:私は、コードの一部を以下しているSConstruct
ファイルで。次回は私はそれが私を与えるscons
を実行します。
C:\Users\...>scons -Q
WindowsError: [Error 2] The system cannot find the file specified:
File "C:\Users\...\Win32Project4\SConstruct", line 51:
subprocess.call(a.abspath)
これは、プログラムが呼び出しが実行されるSconscript
によって作成される前のように見えます。これで何ができますか?私はSConsの新人です。私はこのツールを使って隠すことをやっています。これは文字通り何よりも前に実行されます(.obj/.libファイルは作成されません)。
また、subprocess
をAlias
に変更すると、.exe
にコンパイルできるため、コードが機能します。しかし、これは私が望むものではありません。私の目標は、ビルド中にテスト結果を印刷することです。
あなたの説明は本当に私の問題を解決しました。ありがとうございました。 –