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?
Antworten
Zu viele Anzeigen?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.