我正在尝试从源代码编译 QCAD(一个依赖 Qt 的开源 CAD 应用程序),以便我可以为 msvs2008 构建它。我一直在按照此处给出的说明进行操作:http://www.qcad.org/en/component/content/article/78-qcad/111-qcad-compilation-from-sources .
我已成功配置和编译 Qt 4.8.5,并设置了环境变量 PATH。我创建了一个新的环境变量 QMAKESPEC 并将值设置为 win-32-msvc2008。我毫无问题地完成了 QCAD 的配置。但是,在编译大约 30 分钟后,我遇到了以下错误:NMAKE: fatal error U1077:“cd”:返回代码“0x2”。我在 Qt 的编译中看到过类似的错误报告,但是,我没有遇到任何问题。有没有人知道可能出了什么问题?提前致谢。
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>
最佳答案
虽然花了一些时间,但我已经解决了这个问题。文件 QtScriptShell_QWebPluginFactory.cpp 包含几行 decalring 空数组:
static const QWebPluginFactory::Extension qtscript_QWebPluginFactory_Extension_values[] = {};
static const char * const qtscript_QWebPluginFactory_Extension_keys[] = {};
虽然这对于 C99 是可以接受的,但 Visual Studio C++ 编译器不接受空数组。所以我只是添加了一个非零大小,错误就消失了。
static const QWebPluginFactory::Extension qtscript_QWebPluginFactory_Extension_values[1];
static const char * const qtscript_QWebPluginFactory_Extension_keys[1];
关于c++ - NMAKE : fatal error U1077: 'cd' :return code '0x2' cl. 可执行程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23831911/