Me gustaría establecer el compilador define a -DBLUB, así como -DFOO = 1.Crear CPPDEFINES mixto (conjunto de valores) en SCons
Actualmente sólo tengo:
env.Append("CPPDEFINES", ["BLUB", "VALUE2"])
Ahora me gustaría incluir un tercer definen a través de "FOO": 1 y por lo tanto utilizar CPPDEFINES como un diccionario para que pueda más tarde en la prueba bastante fácil
env["CPPDEFINES"].get("FOO") == 1
o tan. Todo lo que intenté genera errores de sintaxis o errores extraños. ¿Podría uno explicar las formas extrañas de hacer esto en Python para mí?
Usted __CANNOT__ uso env.Append * * en un nuevo Medio Ambiente desde CPPDEFINES * * se inicializa como una lista y anexar simplemente agrega el diccionario como un elemento de lista. Para que esto funcione, debe usar * env ["CPPDEFINES"] = {'Foo': 1} * para que se reemplace el tipo/variable actual * CPPDEFINES *. – abergmeier
@LCIDFire 'CPPDEFINES' no se inicializó como una lista para mí en un nuevo entorno en scons 2.0.1. Cuando creo un nuevo entorno, puedo usar el código que escribí arriba. Tiene razón al señalar que si 'CPPDEFINES' ya es una lista, obtendrá errores, por lo tanto, la primera línea de mi respuesta :) –
Para la lista, puede manejarlo con:' env.Append (CPPDEFINES = ['BLUB', 'VALUE2', ('Foo', '1')]) '. Te dará como resultado '-DBLUB -DVALUE2 -DFoo = 1' Debes agregarlo en tu respuesta. – Phong