2016-04-25 8 views
6

Ich habe ein C++ - Projekt mit vielen Vorlagen und kompiliert nicht mit fatal error C1060: compiler is out of heap space. Es gibt viel freien RAM. Ich habe versucht mit/Zm Compiler Option zu bezahlen, aber es hat nicht geholfen. Ich kann sehen, dass Visual Studio die 32-Bit-Version des Compilers verwendet und ich denke, dass dies der Grund für diesen Fehler ist. Gibt es eine Möglichkeit, Visual Studio zu zwingen, stattdessen 64-Bit-Compiler zu verwenden?Verwenden von 64-Bit-Compiler in Visual C++ 2015

UPDATE

Meine Frage ist kein Duplikat. Ich sah die anderen Fragen und probierte die Vorschläge aus. Aber in meinem Fall benötigt der Compiler mehr als 6 GB RAM, um das Projekt zu kompilieren. Es war die maximale Menge an RAM, die vom 64-Bit-Compiler zugewiesen wurde. Ich kann den 64-Bit-Compiler verwenden, wenn ich mein Projekt unter Verwendung von msbuild erstelle, aber ich möchte es aus Visual Studio erstellen, und es verwendet standardmäßig 32-Bit-Compiler. Ich möchte es zwingen, den 64-Bit-Compiler zu verwenden. Mit 64-Bit-Compiler meine ich den Compiler, der nicht nur 64-Bit-Anwendungen erstellt, sondern selbst eine 64-Bit-Anwendung ist.

+0

Schauen Sie diese Frage an und versuchen Sie @Colin Robertsons Kommentar – RomCoo

+1

haben Sie das versucht? https://msdn.microsoft.com/en-us/library/yz7kx3y2.aspx –

+2

Mögliches Duplikat von [Wie funktioniert der Visual Studio Compiler abstürzt] (http://stackoverflow.com/questions/1388608/how-to- Work-Around-Visual-Studio-Compiler-Abstürze) –

Antwort

0

Als war die Lösung für dieses Problem in den Kommentaren von Hans Passant schlug vor, die Executable-Verzeichnisse mit dem ändern ist dieser Punkt auf die 64-Bit-Binärdateien. Dazu müssen Sie zu C++ - Projekteigenschaften -> VC++ - Verzeichnisse -> ausführbare Verzeichnisse in Visual Studio gehen und den Wert durch $ (VC_ExecutablePath_x64_x64); $ (WindowsSDK_ExecutablePath_x64); $ (VS_ExecutablePat h); $ (MSBuild_ExecutablePath) ; $ (FxCopDir); $ (PATH)

Diese Änderung macht Visual Studio 64-Bit-C++ - Compiler verwenden.

1

Mit Bezug auf https://msdn.microsoft.com/en-us/library/f2ccy3wt.aspx?f=255&mspperror=-2147217396#Anchor_1, Compiler welche x64 64-Bit-nativer verwendet werden.

Um dies zu tun, wie auf https://msdn.microsoft.com/en-us/library/x4d2c09s.aspx#Anchor_0, erwähnt Lauf vcvarsall amd64 auf Eingabeaufforderung.

Wenn dann devenv auf der Kommandozeile ausgeführt wird, fügen Sie die Option /useenv:

Wenn Sie mit DEVENV für Befehlszeilen baut, setzen Sie die Umwelt durch vcvarsall.bat oder vcvars32.bat tut keinen Einfluss auf Ihre Builds, es sei denn, Sie auch die/useenv Option angeben.

Verwandte Themen