Qt工作历程-在wince上的编译Qt4.8.5

Qt5.1增加了很多东西,但貌似都是以动态和跨平台为主的技术,看来Qt是真心想做大平台,类似MTK这种资源和性能都不高的平台,他开始觉得没市场了吧。


根据官方的编译介绍:

http://qt-project.org/doc/qt-4.8/install-wince.html


其实不外乎几步:

第一步:设置系统变量

下载qt-everywhere-opensource-src-4.8.5.zip文件,看清楚了,这是Qt的源码,不是SDK,地址如下

http://download.qt-project.org/official_releases/qt/4.8/4.8.5/qt-everywhere-opensource-src-4.8.5.zip

解压后,笔者放到了 C:\Qt\ 内,把解压的文件夹改成Qt485,然后把C:\Qt\Qt485\bin 加入系统PATH里


第二步:修改mkspecs上的相关编译函数

在C:\Qt\Qt485\mkspecs下面有一个叫wince60standard-armv4i-msvc2005文件夹,里面是

CE_SDK = STANDARDSDK_600   # replace with actual SDK name
CE_ARCH = ARMV4I 

改成相对应的wince的SDK名称和架构,名称可以在C:\Program Files\Windows CE Tools\wce600下面找到


第三步:配置Qt,这里需要清晰需求

开始->程序->Microsoft visual studio 2005->visual studio tool->command 窗口(类似cmd窗口,但带了vs的编译环境设置)

不断cd到 C:\Qt\Qt485 


选择1:

运行 configure -platform win32-msvc2005 -xplatform wince60standard-armv4i-msvc2005

这是比较普通的配置方式,但其实configure的学问太多了,详细看前面介绍的官方文档,这里补充一些其他


1.在C:\Qt\Qt485\src\corelib\global 里面提供了很多qconfig-large.h qconfig-minimal.h 的类似东西这些其实就是qt自己帮我们配置好的一些最大,或者最小的配置项

这些东西,可以通过在configure 里添加 -qconfig XXX.h 这样的方式加载,其实类似 -D XXX -D XXX的一个综合文件。


2.关于Qt上的裁剪,都可以具体看C:\Qt\Qt485\src\corelib\global 里面的 qfeatures.h 和 qfeatures.txt


选择2:

这里笔者提供一个自己实验用的配置

configure -platform win32-msvc2005 -xplatform wince60standard-armv4i-msvc2005 -release -static -nomake examples -nomake demos -no-exceptions -no-qt3support -no-scripttools -no-openssl -no-opengl -no-webkit -no-phonon -no-sql-sqlite -D QT_NO_SOUND -D QT_NO_WIDGETS -D QT_NO_DIALOGS -D QT_NO_CURSOR


第四部:设置include,lib和path

set INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\ce\include;C:\Program Files\Windows CE Tools\wce600\XXX_SDK\Include\Armv4i
set LIB=C:\Program Files\Microsoft Visual Studio 8\VC\ce\lib\armv4i;C:\Program Files\Windows CE Tools\wce600\XXX_SDK\Lib\ARMV4I
set PATH=C:\Program Files\Microsoft Visual Studio 8\VC\ce\bin\x86_arm;%PATH%

里面的XXX_SDK,请在自己的系统里找


最后:nmake


对了,有些wince会跑不起来,串口输出 could not resolve import CoCreateGuid,是因为wince的DOM被裁剪掉了,因此要加上:

CORE OS
CEBASE
Applications And Services Development
Component Services (COM and DCOM)
Component Object Model
COM
CoCreateGuid functionality for OLE32 


根据不同的编译方式,C:\Qt\Qt485\lib 里面,会有不同的库,运行Qt程序,在板子上放上程序,和这些库(静态除外)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值