9 Stimmen

Scons zur Verwendung eines älteren Compilers zwingen?

Ich habe ein C++-Projekt, das Boost verwendet. Das gesamte Projekt wird mit scons + Visual Studio 2008 erstellt. Wir haben Visual Studio 2010 installiert und es hat sich herausgestellt, dass scons versucht hat, den neueren Compiler anstelle des alten zu verwenden - und das Projekt nicht bauen konnte, da boost und Visual Studio 2010 sich nicht besonders mögen - noch nicht. Wir würden dies gerne unterdrücken und scons zwingen, die Version 2008 zu verwenden. Ist das möglich? Wie kann man das machen?

17voto

dantje Punkte 1589

Sie können die scons-Umgebung() ändern, indem Sie einfach die gewünschte Version auswählen:

env = Umgebung(MSVC_VERSION= <someversion> )

Aus der scons manpage:

MSVC_VERSION Legt die bevorzugte Version von Microsoft Visual C/C++ ein, die verwenden.

Wenn $MSVC_VERSION nicht gesetzt ist, wird SCons (standardmäßig) die neueste Version von Visual C/C++, die auf Ihrem System Ihrem System installiert ist. Wenn die angegebene Version nicht installiert ist, schlägt die Initialisierung des Werkzeugs fehlschlagen. Diese Variable muss als Argument an den Environment()-Konstruktor übergeben werden; ein späteres Setzen hat keine Auswirkung. Setzen Sie sie auf einen unerwarteten Wert (z.B. "XXX"), um zu sehen die gültigen Werte auf Ihrem System zu sehen.

2voto

Sie müssen die Konstruktionsvariable CXX umdefinieren, idealerweise in Ihrer Umgebung:

env = Environment(CXX = "C:\\path\to\vs2008\executable")

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X