2014-05-23 4 views
6

Ich versuche QCAD (eine Open-Source-CAD-Anwendung, die auf Qt beruht) von der Quelle zu kompilieren, damit ich sie für msvs2008 erstellen kann. Ich habe die folgenden Anweisungen befolgt: http://www.qcad.org/en/component/content/article/78-qcad/111-qcad-compilation-from-sources.NMAKE: fataler Fehler U1077: 'cd': Rückgabecode '0x2' cl.exe

Es ist mir gelungen, Qt 4.8.5 erfolgreich zu konfigurieren und zu kompilieren, und ich habe meine Umgebungsvariable PATH gesetzt. Ich habe eine neue Umgebungsvariable QMAKESPEC erstellt und den Wert auf win-32-msvc2008 festgelegt. Ich habe die Konfiguration von QCAD ohne Probleme abgeschlossen. Ungefähr 30 Minuten nach der Kompilierung habe ich den folgenden Fehler gefunden: NMAKE: Schwerwiegender Fehler U1077: 'cd': gibt den Code '0x2' zurück. Ich habe ähnliche Fehler für die Kompilation von Qt gesehen, aber ich hatte dort kein Problem. Gibt es jemanden, der eine Ahnung hat, was falsch ist? Danke im Voraus.

Generating Code... 
c:\qcad\src\3rdparty\qt-labs-qtscriptgenerator-4.8.5\generated_cpp\com_trolltech_qt_webkit\qtscriptshell_qwebpluginfactory.cpp(58) 
: warning C4715: 'QtScriptShell_QWebPluginFactory::create' : not all control paths return a value 
c:\qcad\src\3rdparty\qt-labs-qtscriptgenerator-4.8.5\generated_cpp\com_trolltech_qt_webkit\qtscriptshell_qwebpluginfactory.cpp(128) 
: warning C4715: 'QtScriptShell_QWebPluginFactory::plugins' : not all control paths return a value 
c:\qcad\src\3rdparty\qt-labs-qtscriptgenerator-4.8.5\generated_cpp\com_trolltech_qt_webkit\qtscriptshell_qwebhistoryinterface.cpp(105) 
: warning C4715: 'QtScriptShell_QWebHistoryInterface::historyContains' : not all control paths return a value 
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\cl.EXE"' : return code '0x2' 
Stop. 
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe"' : return code '0x2' 
Stop. 
NMAKE : fatal error U1077: 'cd' : return code '0x2' 
Stop. 
NMAKE : fatal error U1077: 'cd' : return code '0x2' 
Stop. 
NMAKE : fatal error U1077: 'cd' : return code '0x2' 
Stop. 
NMAKE : fatal error U1077: 'cd' : return code '0x2' 
Stop. 
NMAKE : fatal error U1077: 'cd' : return code '0x2' 
Stop. 

C:\qcad> 
+0

Wahrscheinlich verursacht Leerzeichen in Ihrem Pfadnamen dies. http://stackoverflow.com/questions/14861718/fatal-error-when-compiling-qt-in-windows – PaulMcKenzie

Antwort

5

Es dauerte eine Weile, aber ich habe das Problem gelöst. Die Datei enthielt QtScriptShell_QWebPluginFactory.cpp ein paar Zeilen decalring leere Arrays:

static const QWebPluginFactory::Extension qtscript_QWebPluginFactory_Extension_values[] = {}; 
static const char * const qtscript_QWebPluginFactory_Extension_keys[] = {}; 

Obwohl dies für C99, die Visual Studio C++ Compiler nicht akzeptieren leere Arrays akzeptabel ist. Also habe ich einfach eine Größe ungleich Null hinzugefügt und der Fehler ist verschwunden.

static const QWebPluginFactory::Extension qtscript_QWebPluginFactory_Extension_values[1]; 
static const char * const qtscript_QWebPluginFactory_Extension_keys[1];