5

誰かが次の構造を許可するscons構成ファイルを提供できますか

toplevel/
        /src - .cc files
        /include .h files

最上位では、o と最終的な exe が必要です。

4

3 に答える 3

7

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 を実行すると、出力ファイルも同じディレクトリに生成されます。

于 2008-11-19T19:05:01.897 に答える
5

この質問: https://stackoverflow.com/questions/279860/... は、かなり柔軟な scons スケルトンを提供します。これは、パス変数を少し調整するだけでニーズに応えます。

于 2008-11-19T19:01:05.260 に答える
4
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'))

御馳走を働いた。ありがとう。

于 2008-11-19T22:20:04.780 に答える