誰かが次の構造を許可するscons構成ファイルを提供できますか
toplevel/
/src - .cc files
/include .h files
最上位では、o と最終的な exe が必要です。
Sconscript ファイルの一例を次に示します。
env=Environment(CPPPATH='/usr/include/glib-2.0/:/usr/lib/glib-2.0/include:inc',
CPPDEFINES=[],
LIBS=['glib-2.0'])
env.Program('runme', Glob('src/*.c'))
(この例では環境行は実際には必要ありませんが、非標準の glib ヘッダー パスをインクルードしてそこに残したので、追加のインクルードと定義を追加する方法がわかります)
ソース ファイルは src ディレクトリにあり、ヘッダー ファイルは inc ディレクトリにあります。ベース ディレクトリから scons を実行すると、出力ファイルも同じディレクトリに生成されます。
この質問: https://stackoverflow.com/questions/279860/... は、かなり柔軟な scons スケルトンを提供します。これは、パス変数を少し調整するだけでニーズに応えます。
env=Environment(CPPPATH='/usr/include/glib-2.0/:/usr/lib/glib-2.0/include:include',
CPPDEFINES=[],
LIBS=['glib-2.0'])
if ARGUMENTS.get('debug', 0):
env.Append(CCFLAGS = ' -g')
env.Program('template', Glob('src/*.cc'))
御馳走を働いた。ありがとう。