Qt4.6.2配置VS2008 WindowsMobile
一.安装
1. 安装VS2008,并勾选“Visual C++”、“智能设备可编程技术”这两项。
2. 安装ActiveSync版本4.5:
下载地址:
http://download.microsoft.com/download/7/e/c/7ecbd388-7fb5-4e3e-b57f-12eaf7eb6136/setup.msi
3. 安装Windows Mobile 6.0 Professional SDK
下载地址:
http://download.microsoft.com/download/f/2/3/f232f773-7edc-4300-be07-d3b76a5b3a91/Windows%20Mobile%206%20Professional%20SDK%20Refresh.msi
4. 安装Windows Mobile 6 Professional 中文镜像(模拟器 可选)
下载地址:
http://download.microsoft.com/download/0/1/2/012bfbba-9fe5-4e68-86c9-d434446d97dd/0804/Windows%20Mobile%206%20Professional%20Images%20(CHS).msi
5. 安装QT Creator;
二、编译Qt
1、下载Qt 4.6.2
Qt源代码这里找: http://www.qtcentre.org/
http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.6.2.zip;
2. 编译
qt-everywhere-opensource-src-4.6.2.zip 解压到D:/Qt/qt4.6.2 文件夹
新建一文件夹Make_Qt-WM.bat将以下内容保存文件里面, 放在D:/Qt/qt4.6.2 目录下:
(注:D:/Qt/qt4.6.2目录下,直接是解压后的bin,lib,include之类文件,不应该再有一级别qt目录文件)
//
@echo off
rem 设置环境变量
set path=%Path%;C:/Program Files/Microsoft Visual Studio 9.0/VC/; D:/Qt/qt4.6.2; D:/Qt/qt4.6.2/bin
call vcvarsall.bat
rem 管道命令自动答复configure 的参数选项
(echo;o&echo;y)|configure -platform win32-msvc2008 -xplatform wincewm60professional-msvc2008
set INCLUDE=C:/Program Files/Microsoft Visual Studio 9.0/VC/ce/include;C:/Program Files/Windows Mobile 6 SDK/PocketPC/Include/Armv4i
set LIB=C:/Program Files/Microsoft Visual Studio 9.0/VC/ce/lib/armv4i;C:/Program Files/Windows Mobile 6 SDK/PocketPC/Lib/ARMV4I
set PATH=C:/Program Files/Microsoft Visual Studio 9.0/VC/ce/bin/x86_arm;%PATH%
call setcepaths wincewm60professional-msvc2008
nmake
nmake clean
cmd.exe
//
双击运行Make_Qt-WM.bat ,编译 3 小时左右;
三、运行Qt 库自带的示例程序
打开项目文件 D:/Qt/4.6.2/examples/widgets/digitalclock/digitalclock.vcproj
项目 ->配置属性 ->部署 ->部署设备 ->选择CHS Windows Mobile 6 Classic Emulator
F5 运行,模拟器启动运行,显示一个数字时钟。
四、新建Qt Windows CE Application 工程
1. 安装qt-vs-addin-1.1.4.exe,安装后会在VS2008环境Project types下集成Qt4 Projects项;
打开VS2008,在菜单栏目上会多Qt项目;点击Qt-->Qt Options,设置Qt版本,如果有原先版本,把原先版本去掉,设置:Name:qt4.6.2;Path:D:/QT/qt4.6.2;如果环境变量没设置好,还需要重新设置环境变量;我的电脑->右键->属性->高级->环境变量;Path添加D:/QT/qt4.6.2/bin;如果变量没有QTDIR,则添加变量QTDIR,新建- >变量名:QTDIR->变量值:
D :/QT/qt4.6.2;
2. 选择Qt Windows CE Application 工程,工程命名为MyQtTest;新建工程导向设置:Overvie
下选择你的目标平台:Windows Mobile 6 Professional SDK(ARMV4I)/Qt qt4.6.2;在ProjectSettings里,设置你需要的库;Generated Class下设置Class File,最后完成。
3. 部署设置:选择Project->Properties->Configuration Properties->Deployment;修改Additional Files
部署加载的DLL,QtCored.dll改成QtCored4.dll,QtGuid.dll改成QtGuid4.dll,OK,确定;
4. 菜单Build->Build MyQtTest;F5 Start Debugging,WindowsMoile弹出界面;
需要注意问题:
1. visual assist是我们常用的vs插件,可以方便我们的编码过程,但是默认它不会加入QT库,因此我们需要专门设置。打开visual assist设置面板,选择project- >C/C++ Directories 将Platform选择为Custom,然后分别在stable include files 和src files中加入qt的include和src目录。重启vs后,assist即可以包含QT库,使用起来相当方便。
2. ui界面打不开,重新选择ui启动默认界面。点击ui右键->Open With->Add->选择路径->"C:/Qt/4.6.2/bin/designer.exe" OK,设置默认,OK。
扩展Windows Mobile模拟器存储空间
Windows Mobile 模拟器空间大小默认是32M,在加载比较多的.DLL到模拟器中去时,容易空间不足导致加载失败。
WM模拟器Memory扩展方法
1. Program Memory扩展方法
对于模拟器中的Program存储部分,我们可以通过Visual Studio的设置来改变。具体方法如下,通过Tools –> Options -> Device Tools -> Devices菜单,选中目标模拟器,以Windows Mobile 6 Professional Emulator为例,点击右边的"Properties”菜单,然后在弹出的对话框中选"Emulator Options”,在“Specify RAM Size”中填写需要的存储空间大小,这里我填写了256。重启模拟器以后,就能够看到Program的大小改变了。
2. 利用Storage Card进行扩展的方法
有时候我们需要在模拟器上安装一些应用程序来测试,这就可以通过Storage Card来进行扩展。具体方法如下,选择模拟器的File->Configure->General->Shared folder,并选择本地PC的一个文件夹,映射为模拟器的Storage Card。
3. 改变程序调试目录进行扩展
我们建立的Windows Mobile项目,默认的程序调试路径为My Device->Program Files,但是有的时候,我们调试的应用程序可能会占用很大的空间,如果超过了Storage的限制(32M),那么肯定就无法进行调试。既然Storage的大小为32M,已经hard code了,那么我们有没有办法来改变程序调试的路径,使其也映射到本地PC文件夹呢?答案是肯定的。具体方法如下:点击”Project Properties”,(注意不是Solution Properties),改变Deployment,这样,当你Debug程序的时候,就会下载到指定的目录当中去了,而Storage Card又已经通过方法2映射到本地PC的文件中去了。