我正在尝试为Visual Studio 2010构建Qt,我正在按照this post
的接受答案中的说明进行操作我正在使用修改后的configure命令:
configure.exe -release -no-webkit -no-phonon -no-phonon-backend -no-script -no-scripttools -no-qt3support -no-multimedia -qt-libpng -qt-zlib -qt-libmng -qt-libtiff -qt-libjpeg
哪个工作正常,但是当我启动nmake时它最终会失败并返回给我这个错误:
itemviews\qabstractitemview.cpp(2311) : error C2039: 'Key_BackSpace' : is not a member of 'Qt'
itemviews\qabstractitemview.cpp(2311) : error C2065: 'Key_BackSpace' : undeclared identifier
itemviews\qabstractitemview.cpp(2311) : error C2051: case expression not constant
...
Generating Code...
NMAKE : fatal error U1077: '"c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\cl.EXE"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.
我使用的原始命令是前面提到的帖子中使用的命令,但我添加了这些命令:
-qt-libpng -qt-zlib -qt-libmng -qt-libtiff -qt-libjpeg
并删除了这个:
-no-ltcg
让它正常工作,但是nmake仍然无法正常工作。
感谢任何帮助,谢谢
答案 0 :(得分:2)
或者您可以尝试从另一个角度来看待此错误,例如拼写错误或其他内容。事实上,这个问题是错误的类错误。尝试再次将原始Qt::Key_BackSpace
修改为Qt::Key_Backspace
和nmake
。我遇到了你在这里发布的问题我确实使用了 comment-out 方式。直到我偶尔在屏幕下看一下我的键盘......是的,它是 Backspace 而不是 BackSpace !
此外,为了更具体,您可以在以下版本的相同源文件中签出片段,例如:
Qt 4.7.4:%QTDIR%/ src / gui / itemviews / qabstractitemview.cpp(2321):Qt::Key_Backspace
Qt 4.8.1:%QTDIR%/ src / gui / itemviews / qabstractitemview.cpp(2337):Qt::Key_Backspace
答案 1 :(得分:1)
在此事实之后肯定是这样,但我能够通过在QT 4.6.4的第2311行的qabstractitemview.cpp中评论出Qt :: Key_BackSpace案例来解决这个问题。我想关键定义在补丁或同样愚蠢的东西中被改变了。您可以在/%My QT Directory%/ src / gui / itemviews / qabstractitemview.cpp中找到该文件。希望这有帮助!