2008-11-19 124 views

回答

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')) 

工作一種享受。謝謝。

4

這個問題:https://stackoverflow.com/questions/279860/... 給出了一個非常靈活的scons骨架,它應該通過對路徑變量的一些調整來滿足您的需求。

+1

我認爲這個答案對於大多數新來的scons來說太難了。 VariantDir? (例如)並假定Python的知識。 – RichieHH 2008-11-19 22:22:15

+0

你的假設是正確的理查德。我不知道那個配置文件的作用,但我想我設法從中得到一些有用的東西。 – anon58192932 2012-04-13 18:17:02

8

這裏是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')) 

(環境行不是爲例子真的有必要,但我有它包括非標準巧舌如簧頭路徑和離開那裏,所以你可以得到想法如何添加額外包含並定義)

源文件位於inc目錄中的src目錄和頭文件中。您從基本目錄運行scons,輸出文件也會在同一個目錄中生成。