Windows+QT+VS2008

更多精彩内容,请见:http://www.16boke.com


by zxy,Java/C++编程交流群QQ:168424095

http://qt.nokia.com/downloads下载
SDK :   qt-win-opensource-4.8.1-vs2008.exe
VS插件:  qt-vs-addin-1.1.11-opensource.exe
qt creator工具:qt-creator-win-opensource-2.5.0.exe

本人安装目录默认:C:\Qt\4.8.1,不建议安装到C盘,因为等下要对SDK进行编译,编译过程中要用到很大的空间。
(1)下载完毕后,将三个exe全部安装完毕,打开qt creator准备写项目,却得到错误
配置qt creator,菜单项工具->选项->构建和运行->Qt版本 添加,找到qmake所在位置。却一直是个个红色的感叹号下面写到Qt没有正确安装,请运行make install。

看Qt Creator的菜单项帮助,关于Qt Creator 2.5.0基于Qt 4.8.1(32bit)而我下的是Qt 4.8.2版本的就重新下了一个,再次安装后问题依旧。

(2)根据网上写的进行系统配置:
环境变量设置:
在path变量中增加C:\Qt\4.8.1\bin
创建变量QMAKESPEC,值为 win32-msvc2008,win32-msvc2008指定具体的VC版本,VC6.0对应的是win32-msvc,VC7.0对应的是win32-msvc.net,VC2005对应的是win32-msvc2005等。
创建QTDIR值为C:\Qt\4.8.1\bin。
错误依旧。
(3)打开VS2008,选择QT菜单中的Open Qt Project File(.pro)……,出错。
对qt sdk进行编译
打开VS2008命令提示行
CD到QT安装目录
输入命令 configure -platform win32-msvc2008
如上图  输入 o(opensource模式)
然后 输入y(同意license)
等几分钟后配置结束,输入nmake
然后就是等待漫长的编译了……
遇到错误:
platform\DefaultLocalizationStrategy.cpp(327):error C2001:常量中有换行符
platform\DefaultLocalizationStrategy.cpp(327):fatal error C1057:宏扩展中遇到意外的文件结束
NMAKE:fatal error U1077:"...(路径)\MSVS10.0\VC\BIN\cl.EXE":返回代码"0x2"
Stop.NMAKE:fatal error U1077:"...(路径)\MSVS10.0\VC\BIN\nmake.EXE":返回代码"0x2"
Stop.NMAKE:fatal error U1077:"cd":返回代码"0x2"
Stop.NMAKE:fatal error U1077:"cd":返回代码"0x2"Stop.
解决方法:修改src\3rdparty\webkit\Source\WebCore\platform下的DefaultLocalizationStrategy.cpp,定位到327行,将本行
return WEB_UI_STRING("Look Up "<selection>"", "Look Up context menu item with selected word").replace("<selection>", truncatedStringForLookupMenuItem(selectedString));
替换成
return WEB_UI_STRING("Look Up \"<selection>\"", "Look Up context menu item with selected word").replace("<selection>", truncatedStringForLookupMenuItem(selectedString));
重新执行nmake命令

进过几个小时候终于OK了,再次打开qt creator,重新配置Qt版本,OK。写一个测试例子。
菜单 文件->新建文件或工程->Applications->Qt Gui应用->输入名称gui,其他均是默认,一直点击下一步到最后。点击左下角构建项目,运行项目或用快捷键,Ctrl+b构建目,Ctrl+r运行项目。 打开一个空的有菜单栏的窗体。
成功之后就可以进行深入操作了。


更多精彩内容,请见:http://www.16boke.com

你可能感兴趣的:(windows,String,qt,OpenSource,menu)