2008-11-19 7 views
5

kann jemand eine scons Konfigurationsdatei geben, die die folgende Strukturscons: src und umfassen dirs

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

auf höchster Ebene ich das o und letzte exe wollen ermöglicht.

Antwort

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

Arbeitete ein Vergnügen. Vielen Dank.

+0

Wie machen wir die Objektdateien (*. O) in einen neu erstellten Ordner namens obj –

4

Diese Frage: https://stackoverflow.com/questions/279860/... gibt ein ziemlich flexibles SCON-Skelett, das Ihre Bedürfnisse mit ein paar Änderungen an den Pfadvariablen dienen sollte. Hier

+1

Ich denke, dass diese Antwort zu schwierig für die meisten Leute ist, die zu scons neu sind. VariantDir? (Zum Beispiel) und setzt Kenntnisse von Python voraus. – RichieHH

+0

Ihre Annahme ist richtig Richard. Ich habe keine Ahnung, was diese Konfigurationsdatei macht, aber ich denke, ich habe etwas Nützliches daraus ziehen können. – anon58192932

8

ist ein Beispiel für Sconscript

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

(Die Umwelt Linie ist nicht wirklich notwendig für das Beispiel, aber ich habe es den Nicht-Standard-glib Kopf Pfad zu schließen und es dort belassen, so dass Sie bekommen können Die Idee, wie Sie zusätzliche hinzufügen und definieren)

Die Quelldateien befinden sich in Src-Verzeichnis und Header-Dateien in Inc-Verzeichnis. Sie führen SCONs aus dem Basisverzeichnis aus, und die Ausgabedatei wird ebenfalls im selben Verzeichnis generiert.