大橙子网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

包含qtios开发环境的词条

如何采用QT开发出windows/Linux/Mac/Andriod/iOS的程序?

qt的代码本身在windows和linux底下用qtcreator编译可以跨平台,但要发布的话还要手动的静态编译qtcreator源码,mac,ios开发好像要用mac平台下的软件,android一般是java,python之类的,qt没听说过。qt是c++的超集,加了些qt自己的库而已。

创新互联建站专业IDC数据服务器托管提供商,专业提供成都服务器托管,服务器租用,香港机房服务器托管香港机房服务器托管,成都多线服务器托管等服务器托管服务。

如何使用qt搭建ios开发环境

开始编译安装:

一、X11编译:

1.进入qt-x11-opensource-src-4.5.0源码目录。

./configure -no-openssl

在我这里必须加上-no-openssl选项,否则在make过程中,编译到ssl时会报错。出错信息为:

ssl/qsslsocket_openssl_symbols_p.h:264: error: variable or field ‘q_sk_free’

declared void

ssl/qsslsocket_openssl_symbols_p.h:264: error: ‘STACK’ was

not declared in this scope

ssl/qsslsocket_openssl_symbols_p.h:264: error:

‘a’ was not declared in this scope

ssl/qsslsocket_openssl_symbols_p.h:265: error: ‘STACK’ was not declared in this

scope

ssl/qsslsocket_openssl_symbols_p.h:265: error: ‘a’ was not declared

in this scope

……

……

默认安装路径为

/usr/local/Trolltech/Qt-4.5.0。可用--prefix 指定其他安装路径。

2. gmake

# linux下一般可直接用make代替gmake。如果要加快编译速度,就加上 -jx ,x表示最大的线程数。

3.

gmake install

二、qt-embedded-x86编译:

1.进入qt-embedded-linux-opensource-src-4.5.0-x86源码目录。

./configure -prefix

/usr/local/Trolltech/QtEmbedded-4.5.0-x86 -embedded x86 -no-openssl -qt-gfx-qvfb

-qt-kbd-qvfb -qt-mouse-qvfb

先后配置了安装目录、嵌入式架构(x86)。同时也跟X11版本一样,配置了

-no-openssl,没有这一项的话,make的过程中会出现跟编译X11时一样的错误。再后面的几项是为了更好的配合qvfb,网上说如果没有这几项,安装好qt-embedded-x86后想在qvfb上调试程序时,会出现类似下面的错误:

Error opening buffer device /dev/fb0QScreenLinuxFb::connect: No such

file or directory

2. gmake

跟x11版一样

3. gamke

install

三、qt-embedded-arm:

与前面两个不同,在编译arm版本的qt-embedded前,必须确认已经安装了交叉工具链,编译过程中要生成许多arm架构的库,所以必须有arm-linux-gcc、arm-linux-g++等工具。我用的是友善提供的arm-linux-gcc-4.5.1版本。

1. 进入qt-embedded-linux-opensource-src-4.5.0-arm源码目录。

./configure -prefix

/usr/local/Trolltech/QtEmbedded-4.5.0-arm -embedded arm -no-openssl

-qt-libpng

指定了安装路径、嵌入式架构。同时也跟X11版本一样,配置了

-no-openssl,没有这一项的话,make的过程中会出现跟编译X11时一样的错误。

另外,还增加了一项,

-qt-libpng,这个选项应该是关于png相关的库,指定用qt自带的png库。如果没有这一项,我这里会出现如下错误:

image/qpnghandler.cpp: In member function 'virtual QVariant

QPngHandler::option(QImageIOHandler::ImageOption) const':

image/qpnghandler.cpp:950:35: warning: 'png_info_struct::width' is deprecated

(declared at

/opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:639)

image/qpnghandler.cpp:950:35: warning: 'png_info_struct::width' is deprecated

(declared at

/opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:639)

image/qpnghandler.cpp:950:55: warning: 'png_info_struct::height' is deprecated

(declared at

/opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:640)

image/qpnghandler.cpp:950:55: warning: 'png_info_struct::height' is deprecated

(declared at

/opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/include/png.h:640)

make[1]: *** [.obj/release-shared-emb-arm/qpnghandler.o] 错误 1

make[1]:

*** 正在等待未完成的任务....

make[1]: Leaving directory

`/root/qt4.5.0/qt-embedded-linux-opensource-src-4.5.0-arm/src/gui'

make:

*** [sub-gui-make_default-ordered] 错误 2

看起来像是我的交叉工具链跟这个QT版本匹配的不太好,Qt好像不太兼容交叉工具链的png.h头文件中定义的数据结构。加上 -qt-libpng

可解决此问题。

四、qvfb:

这时QT就已安装成功。但是还需要额外安装qvfb。

进入qt-x11-opensource-src-4.5.0源码包目录,然后

cd tools/qvfb

在qvfb源码目录下运行

make

会在qt-x11-opensource-src-4.5.0/bin下生成qvfb,我们将它copy至/usr/local/Trolltech/QtEmbedded-4.5.0-x86/bin下即可。

end:

到这里,QT的开发环境基本就搭建好了,利用 qt-embedded-x86 和 qvfb

工具可以很方便的调试QT程序,调试好的程序再经 qt-embedded-arm

编译就可在开发板上运行(还有个小问题,我现在编译好的QT程序虽然可以在开发板上运行,但是运行时触摸屏不能用,只能用USB鼠标控制,想支持触摸屏貌似还需要移植tslib库,等我折腾完了再回来把相关内容补充上)。

qt开发手机软件需要安装什么

qt

SDK是完整的QT开发环境,包括库和一些开发工具,如果你使用vs2008,那你就不需要安装这个,只安装QT库就可以了。

qt

creator是开发环境,类似与vs2008。

如果你想做手机开发,那么QT有专门的mobile版本,你可以到官方网站(qt.nokia.com)上下载,安装QT后,里面的demo也有助你尽快的了解QT,更详细的信息楼主可以搜索一些安装流程,不过QT每个版本更新很快,你找到的安装流程未必是最好的,所以推荐楼主到官方网站上查看最新的安装方法,那样最好~

祝愉快~


分享名称:包含qtios开发环境的词条
网页URL:http://dzwzjz.com/article/dseohic.html
在线咨询
服务热线
服务热线:028-86922220
TOP