2009-08-10 4 views
0

Ich verwende Microsoft Visual Studio 2008 und erfolgreich ein Befehlszeilenprogramm in C++ erstellen.Linker-Optionen zu verhindern "Programm zu groß, um in den Speicher zu passen"

jedoch für meine automatisierten Build nenne ich cl.exe und link.exe außerhalb des Kontextes von MSVC (I bauen Maven Ureinwohner verwenden, da die meisten des Projekts ist die Java).

In diesem Fall kann ich meine ausführbare Datei generieren. Aber wenn ich es ausführe, bekomme ich sofort die Meldung "Programm zu groß um in den Speicher zu passen".

Natürlich gibt es kein echtes Speicherproblem: Ich habe eine leistungsfähige XP-Maschine mit 2 GB Speicher. Ich nehme an, dass die ausführbare Datei die richtigen binären Header fehlt, und dass ich bestimmte Optionen zu cl.exe oder wahrscheinlicher zu link.exe verwenden muss.

Irgendwelche Ideen?

Antwort

1

In der GUI können Sie in den Projekteigenschaften die Befehlszeilenoptionen anzeigen, die an cl.exe & link.exe übergeben wurden, indem Sie unter "Befehlszeile" im Abschnitt C/C++ bzw. Linker nachsehen.

Schauen Sie und vergleichen Sie und kontrastieren Sie, um zu sehen, was Sie anders machen.

Der Fehler selbst schlägt vor, dass Ihre Binärdatei (.exe) beschädigt ist. Weitere Informationen finden Sie unter this.