配置开发环境可真是个痛苦的过程,在编译到某个文件时

 软件     |      2020-03-26 09:47

下一个Qt Visual Studio Integration v1.2.2 for.VS.2003.2005.exe或后续的版本的插件.

配置开发环境可真是个痛苦的过程,网上的资料参差不齐,只有自己一步步来试验一下了

从昨天开始利用VS2005对Qt4.8.2库进行编译,在编译到某个文件时,总是报错,提示VS的cl.exe和nmake.exe返回致命错误。错误罗列如下:

安装的时候,用户名任意,注册码为下列值之一:
FGJ7UGX-WQPWJ6X-F4M-UG6ZQC-2G8N2G-6AYP3G-864F
FGJ58F-HQGNCCM-F4M-BVY8ELX-8KG9WT-NU5JAQ-6C21
FGBBY3M-WYYUFN9-F4M-GWEVVS9-WTKP39X-UKJUUDM-EE0D
FGM9UXX-PJ8CRVX-F4M-UQDJFQ9-PXHXTQ-BZF46Y9-694B

 

DefaultLocalizationStrategy.cpp
platformDefaultLocalizationStrategy.cpp(327) : error C2001: 常量中有换行符
platformDefaultLocalizationStrategy.cpp(327) : fatal error C1057: 宏展开中遇到
意外的文件结束
DragData.cpp
DragImage.cpp
FileChooser.cpp
FileStream.cpp
FileSystem.cpp
GeolocationService.cpp
KillRingNone.cpp
KURL.cpp
Language.cpp
Length.cpp
LinkHash.cpp
Logging.cpp
MIMETypeRegistry.cpp
RuntimeApplicationChecks.cpp
SchemeRegistry.cpp
正在生成代码...
正在编译...
ScrollableArea.cpp
ScrollAnimator.cpp
Scrollbar.cpp
ScrollbarThemeComposite.cpp
ScrollView.cpp
SharedBuffer.cpp
SharedBufferCRLFLineReader.cpp
ThreadGlobalData.cpp
ThreadTimers.cpp
Timer.cpp
UUID.cpp
Widget.cpp
PlatformStrategies.cpp
LocalizedStrings.cpp
Cursor.cpp
正在生成代码...
NMAKE : fatal error U1077: “"d:Program FilesMicrosoft Visual Studio 8VCBIN
cl.EXE"”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “"d:Program FilesMicrosoft Visual Studio 8VCBIN
nmake.exe"”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “cd”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “cd”: 返回代码“0x2”
Stop.

 

本人环境 virtualbox +  xp +  vs 2005  en

于是将注意力集中在了编译器上,试验了几次,都失败了,及时重新安装了vs2005,也没有解决问题。

完成之后,看一看效果吧.

 

今天和同事说起这件事,他提到这个现象,其实有网友已经发现了这个现象,只是在网上没有报道,往往能搜索到的资料是:

竞博体育app下载 1

1.安装vs 2005 en sp1

configure -debug-and-release -stl -platform win32-msvc2005 -no-dsp -vcproj

 

下载vs 2005 en sp1

在VS2005中安装了QT4.4.3,由于目前的QT版本已经很高了,很难找到QT4.3.2之类的版本了,还有另外一个原因:QT在VS2005上的插件的版本也很高了。因此,很多QT与VS2005结合的文章,现在都不太适用了;不过今天花了3个多小时的时间,终于QT4.4.3安装在VS2005上了,并测试成功! 
以下是安装过程:

竞博体育app下载 2

安装sp1 ,耗时约半个钟,死慢,内存占用非常厉害,安装完后遗留下来的文件有两个2个多G,用 360 清除垃圾

  1. 简述
    在 Windows2000/xp 下,安装 VS2005, QT 4.4.3 ;并在 VS2005上建立 QT 的集

 

竞博体育app下载 , 

成开发环境, 利用 VS2005 开发环境开发,调试 QT 程序;
2.所需程序
VS2005 // VS2005 的安装程序;
qt-win-opensource-src-4.4.3.zip // QT 4.4.3 的 Windows 源代码
qt-vs-addin-1.1.4.exe // VS2005 的 for QT 插件

竞博体育app下载 3

2.设置环境变量

  1. 操作步骤
    3.1 安装 VS2005
    在 Windows 下,进入 VS2005/ 目录,双击 setup.exe 程序;
    每次按照提示, 点击 “Next”按钮 即可;
    3.2 安装 QT 4.4.3 源代码
    将qt-win-opensource-src-4.4.3.zip 拷贝到 某个目录,如C:/Qt/ 目录下,并在C:/Qt/

 

QMAKESPEC:win32-msvc2005 //告诉qmake生成可以用于vc2005 的makefile

下解压qt-win-opensource-src-4.4.3.zip(安装路径不要包含空格,否则会编译出错);
3.3 编译QT 4.4.3
① Windows2000/xp中新增一个系统环境变量QMAKESPEC,值为

竞博体育app下载 4

Path: 加上d:qt4.6.2bin //这样才能在cmd上找到qmake

win32-msvc2005
② 在系统环境变量的path中添加C:/Qt/qt-4.3.1/bin
③ 从Windows 的“开始”按钮点击,打开 VS2005 Command Program;

 

QTDIR:d:qt4.6.2

路径如下:
“Start -> Program -> Microsoft Visual Studio 2005 -> Visual Studio Tools -> 

竞博体育app下载 5

 

Visual Studio Command Program”
在VS2005 Command Program 里,进入QT 4.4.3 源代码 目录,如:
> C:/
> cd C:/Qt/ qt-win-opensource-src-4.4.3/
执行configure 目录,参数如下:
>configure -debug-and-release -stl -platform win32-msvc2005 -no-dsp –vcproj
(出现选择項,输入‘y’,按Enter键继续)
等待一段时间后,运行 nmake 命令,如:
> nmake
等待数小时后(视机器条件而定),编译成功即可;
3.4 安装VS2005 的 QT 插件
双击执行 qt-vs-addin-1.1.4.exe 程序即可;

 

 

3.5 设置环境参数
在 “系统环境参数里”,新增 一个环境变量:
QTDIR = C:/Qt/qt-4.3.1
即: 变量名 为 QTDIR
变量值为C:/Qt/qt-4.4.3 

竞博体育app下载 6

3.安装4.6.2,

3.6然后打开VS2005,发现菜单项多了一个‘Qt’ ,说明安装成功!

 

之前我的另一台虚拟机已经安装了一下 qt-sdk-win-opensource-2010.02.1 ,也就是4.6.2版的 ,那么就不用下载了,直接从另一台虚拟机qt目录拷到了这台虚拟机目录d:qt4.6.2 下

  1. 在Windows端测试
    打开 VS2005 ,点击菜单 “File” -> “New” -> “Project ”-> “Qt Projects” -> “QT Application” , 并输入合适的参数和变量,点击 OK.
    之后就可以在 VS2005 里自由的使用 QT Designer 和

竞博体育app下载 7

 

后来仔细发现,编译器其实已经调试到了错误地址:

 

 

platformDefaultLocalizationStrategy.cpp(327) : error C2001: 常量中有换行符

是不是感觉很方便!

4.编译qt 源代码

是一个叫“DefaultLocalizationStrategy.cpp”的文件在327行中出现了问题,因此,顺藤摸瓜,

 

  开始编译前要确定虚拟机的内存和虚拟内存要设大点,我这里设为700M内存,和512M-1024M虚拟内存,之前用256M的时候编译到一半时候内存不够,导致失败,暴汗,以下是编译过程,

发现:

如果你对安装QT还不明白,请看<<成功编写一个QT程序,高兴啊,来之不易...........>>

 

在D:Qtqt4.8.2src3rdpartywebkitSourceWebCoreplatformDefaultLocalizationStrategy.cpp中:

编译之前先运行以下bat,这是4.6的bug

   

clear.bat

del /f %QtDir%srcscripttmpmocdebug_sharedmocinclude.tmp
del /f %QtDir%srcscripttmpmocrelease_sharedmocinclude.tmp
del /f %QtDir%src3rdpartywebkitWebCoretmpmocdebug_sharedmocinclude.tmp
del /f %QtDir%src3rdpartywebkitWebCoretmpmocrelease_sharedmocinclude.tmp

 

打开Visual Studio 2005 Command Prompt

cd /d d:qt4.6.2

configure –fast -platform win32-msvc2005  -nomake examples -nomake docs -nomake demos -no-webkit –no-phonon -no-phonon-backend -no-multimedia

configure 还是比较快的,根据提示一步步选择就可以了

  

nmake //开始编译,又是漫长的等待,视机子情况,至少也要两三个钟头了,这个时候还是去干点别的事吧,傻等着是很累的

 

nmake clean //编译完大概有两个G的临时文件,清理一下

 

5.建立测试工程:

 

随便建写个hello world代码,用qmake生成项目以及makefile ,再用 nmake 编译,如果能成功编译的话,就没什么问题了

 

 

 

6.安装qt 在vs的插件

 

  虽然这样已经可以简单的用nmake 调用vc  的编译器来编译QT程序了,但这里为了直接利用vs 2005 的ide来开发qt程序的话,还得下个插件,那就是  Qt Visual Studio Integration v1.43 for.VS.2003.2005 , 这个是商业的,在这里用D版用一下吧,官网还有一个add-in也是可以实现类似功能的,听说功能相对弱些,就不用了,还是直接上功能强的

     

安装时出现以下提示,没办法了,我认了,下载 .net 2.0 sp1来安装

 

 


Qt Visual Studio Integration 1.4.3 Setup


Service Pack 1 for .NET Framework 2.0 is not installed.

Qt Visual Studio Integration for VS 2005 will not work properly without it.

You will not be able to choose the Qt Visual Studio Integration for VS 2005 component for installation.


确定  


 

  Qt Visual Studio Integration用户名随意,注册码选一个

  FGJ7UGX-WQPWJ6X-F4M-UG6ZQC-2G8N2G-6AYP3G-864F

  FGJ58F-HQGNCCM-F4M-BVY8ELX-8KG9WT-NU5JAQ-6C21

  FGBBY3M-WYYUFN9-F4M-GWEVVS9-WTKP39X-UKJUUDM-EE0D

  FGM9UXX-PJ8CRVX-F4M-UQDJFQ9-PXHXTQ-BZF46Y9-694B

 

 

 

装完后提示重新启动,认了

 

重启后 再安装插件 ,成功后运行vs2005,出现以下画面

 

 

 

这上面还有一个文档,打开来看看,还挺不错,以后再慢慢看

 

 

 

接下来还要设置一下QT的版本,打开菜单 TOOLS->Options->QT->Builds,如下图

 

 

点击add ,设置如下,OK退出

 

 

 

接着选择菜单 QT->Open Solution from .pro file 打开一个pro,F7编译,运行成功。编写代码提示功能一流,图的就是这个

 

 

 

 

7.安装配置 qt creator

 安装qt creator 2.01 版,安装cdb   到d:qtcdb 并没有自动C++的调试器

 

打开qt creator菜单 ,tools ->options ,如下图,设置cdb 的相关路径,qt creator 已经自动检测到了,

在这里我发觉不能更换cdb的安装路径,要不qt creator  debug 的时候会出现 错误

 

 

建个测试工程,测试通过,OK了

 

 

 

参考文章

在Visual Studio中集成使用 Qt Opensource 版本 ||| 在 QtCreator 使用 VC 编译调试

Qt与VS2005/2008的完美配合(转)

Visual Studio 2005 Qt开发环境的建立

[cpp] view plain copy

 

  1. return WEB_UI_STRING("Look Up “<selection>”", "Look Up context menu item with selected word").replace("<selection>", truncatedStringForLookupMenuItem(selectedString));  

 

正是语句中<selection>两边使用了错误的引号,导致了编译不通过。改成:

 

[cpp] view plain copy

 

  1. return WEB_UI_STRING("Look Up "<selection>"", "Look Up context menu item with selected word").replace("<selection>", truncatedStringForLookupMenuItem(selectedString));  

即可。

 

映像深刻的一课!