QT 5.4.1 for Android Windows环境搭建

QT 5.4.1 for Android Windows环境搭建

2015-5-13

 

 

  目录

一、参考文章: 

二、准备软件: 

三、安装准备好的软件: 

四、配置Qt 5.4.1 for Android 

五、解决 Creator Qt Quick 模拟层已崩溃 

六、解决没有 kit selection(构建套件(Kit) 

七、解决编译出错:系统找不到指定的文件

八、友情提示:  

 

一、参考文章:

    1. windowsQt5.1 for android开发环境配置

        http://www.cnblogs.com/rophie/p/3226543.html

    2. Creator Qt Quick 模拟层已崩溃

        http://www.qtcn.org/bbs/simple/?t58504.html

    3. Qt开发环境下载和安装

        http://wenku.baidu.com/view/4e7d7f415a8102d276a22f88

 

二、准备软件:

    1. Qt 5.4.1 for Android (Windows 32-bit, 939 MB) (info)

        http://www.qt.io/download-open-source/#section-2

    2. ndkhttp://developer.android.com/tools/sdk/ndk/index.html

    3. sdkhttp://developer.android.com/sdk/installing/index.html

    4. jdkhttp://www.oracle.com/technetwork/java/javase/downloads/java-se-jdk-7-download-432154.html

    5. anthttp://ant.apache.org/bindownload.cgi

 

三、安装准备好的软件:

    1. Qt 5.4.1 for Android:

        注意选择组件的时候把这些功能选上,经验告诉本人是要选上的,因为都是我们要用的。 :)

 

    2. 安装jdk:这部分不解释,自己到网上去找吧。 :)

    3. 安装sdk:个人感觉只是个解压过程,像是安装的样子;

    4. 解压出ndkant

 

四、配置Qt 5.4.1 for Android

    1. 运行自带QT Creator,菜单中选择【工具】-->【选项】-->Android,配置如下:

    2. 请注意本人因为使用了64位的ndk,后面会导致一些问题,如果你使用的是32位的ndk,有些问题可能不会出现。

五、解决 Creator Qt Quick 模拟层已崩溃

    1. 阅读参考文章2链接内容;

    2. 下载最新版本的:Qt Creator 3.4.0 for Windows (71 MB) (info)

        http://www.qt.io/download-open-source/#section-2

    3. 安装Qt Creator 3.4.0后运行,提示缺少python2.7的库文件,如果这里没有提示,

        在后续操作中的时候也会提示;

    3. 由于Qt Creator 3.4.0版本需要ndk支持提供更多的功能,所以需要额外下载对应平台下的补丁:

        http://download.qt.io/official_releases/gdb/

    4. 解压补丁包,和原来ndk中的文件夹对比,将对应的东西放入对应的文件夹里;

    

六、解决没有 kit selection(构建套件(Kit)

    1. 主要是因为QT Creator没有检测到qmake.exe的原因,所以需要我们自己配置,以下是本人的qmake.exe路径,可以看出和前面安装的组建有关:

        1. D:\QT\install\5.4\android_armv5\bin\qmake.exe

        2. D:\QT\install\5.4\android_armv7\bin\qmake.exe

        3. D:\QT\install\5.4\mingw491_32\bin\qmake.exe

    2. 配置如图:

    3. 查看kit selection( 构建套件(Kit) :

        观察图中的现象可以看出,我们只能使用4.9版本的编译器,ndk中有很多的样子,好像我们只能使用4.9版本的:

 

 

七、解决编译错误:系统找不到指定的文件

    1. 出错信息:

D:\ndk\android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/windows/bin/arm-linux-androideabi-g++ -c -Wno-psabi -march=armv5te -mtune=xscale -msoft-float -ffunction-sections -funwind-tables -fstack-protector -fno-short-enums -DANDROID -Wa,--noexecstack -fno-builtin-memmove -std=gnu++0x -g -g -gdwarf-2 -marm -O0 -fno-omit-frame-pointer -Wall -Wno-psabi -W -D_REENTRANT -fPIE -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_QUICK_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I..\helloworld -I. -ID:\QT\install\5.4\android_armv5\include -ID:\QT\install\5.4\android_armv5\include\QtQuick -ID:\QT\install\5.4\android_armv5\include\QtWidgets -ID:\QT\install\5.4\android_armv5\include\QtGui -ID:\QT\install\5.4\android_armv5\include\QtQml -ID:\QT\install\5.4\android_armv5\include\QtNetwork -ID:\QT\install\5.4\android_armv5\include\QtCore -I. -ID:\ndk\android-ndk-r10d\sources\cxx-stl\gnu-libstdc++\4.9\include -ID:\ndk\android-ndk-r10d\sources\cxx-stl\gnu-libstdc++\4.9\libs\armeabi\include -ID:\ndk\android-ndk-r10d\platforms\android-9\arch-arm\usr\include -ID:\QT\install\5.4\android_armv5\mkspecs\android-g++ -o main.obj ..\helloworld\main.cpp

makefile:798: recipe for target 'main.obj' failed

process_begin: CreateProcess(NULL, D:\ndk\android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/windows/bin/arm-linux-androideabi-g++ -c -Wno-psabi -march=armv5te -mtune=xscale -msoft-float -ffunction-sections -funwind-tables -fstack-protector -fno-short-enums -DANDROID -Wa,--noexecstack -fno-builtin-memmove -std=gnu++0x -g -g -gdwarf-2 -marm -O0 -fno-omit-frame-pointer -Wall -Wno-psabi -W -D_REENTRANT -fPIE -DQT_QML_DEBUG -DQT_DECLARATIVE_DEBUG -DQT_QUICK_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I..\helloworld -I. -ID:\QT\install\5.4\android_armv5\include -ID:\QT\install\5.4\android_armv5\include\QtQuick -ID:\QT\install\5.4\android_armv5\include\QtWidgets -ID:\QT\install\5.4\android_armv5\include\QtGui -ID:\QT\install\5.4\android_armv5\include\QtQml -ID:\QT\install\5.4\android_armv5\include\QtNetwork -ID:\QT\install\5.4\android_armv5\include\QtCore -I. -ID:\ndk\android-ndk-r10d\sources\cxx-stl\gnu-libstdc++\4.9\include -ID:\ndk\android-ndk-r10d\sources\cxx-stl\gnu-libstdc++\4.9\libs\armeabi\include -ID:\ndk\android-ndk-r10d\platforms\android-9\arch-arm\usr\include -ID:\QT\install\5.4\android_armv5\mkspecs\android-g++ -o main.obj ..\helloworld\main.cpp, ...) failed.

make (e=2): 系统找不到指定的文件。

mingw32-make: *** [main.obj] Error 2

14:45:10: 进程"D:\QT\install\Tools\mingw491_32\bin\mingw32-make.exe"退出,退出代码 

Error while building/deploying project helloworld (kit: Android for armeabi (GCC 4.9, Qt 5.4.1))

When executing step "Make"

    2. 观察上文中红色的目录,确认目录是否存在,这里是因为我本人使用的是64位的ndk导致的,如果是32位的ndk,应该不会有这个问题;

    3. 解决方案:

        通过查看<你的ndk根目录>/toolchains/arm-linux-androideabi-4.9/prebuilt/(本人的目录:D:\ndk\android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/)发现windows目录不存在,结果只有windows-x86_64,于是机智且愚蠢的复制了windows-x86_64并重名为windows,在编译,通过,生成apk,并部署到了I.MX6上去了。 :)

    4. 于是我们可以通过分析可知,<你的ndk根目录>/toolchains目录包含了所有编译器,如果我们选择了其他的版本的编译器,出现类似情况,我们也许可以采用类似的方法解决。

八、友情提示:

    1. 从我们创建的项目中的kit selection中可以发现,在默认情况下我们只能使用arm-linux-androideabi-4.9的编译环境;

    2. 从最后的编译出错信息、解决方案可以看出:

        本人安装的64ndk并不提供arm-linux-androideabi-4.9 windos目录,也就是说使用Qt Creator 3.4.0配合QT for Android 5.4.1Android的开发,尽量使用32位的ndk,因为我们下的Qt 5.4.1 for Android (Windows 32-bit, 939 MB) (info)。 :)

    3. 其实我们通过kit selection( 构建套件(Kit) )中的手动设置选择其他的编译器,如果出现七中出现的编译出错,那么,请查看对应的编译需求目录,在不出错的情况下可以考虑上文中的解决方案。

 

### 回答1: Qt是一个跨平台的开源C++应用程序框架,它提供了无数的工具和组件,用于创建GUI应用程序。Qt5.4.1是Qt的一个版本,它是一个旧的版本,但是在Linux系统上,它仍然是一种常见的Qt版本。 Qt5.4.1为Linux操作系统提供了完全的支持,并可以在Linux的多种发行版中运行。Qt5.4.1提供了一系列的工具和库,可以让开发者轻松的创建跨平台的应用程序,并且它们可以在多个平台上运行。在Linux上,Qt5.4.1支持了X11平台,这是Linux上默认的窗口系统。 Qt5.4.1提供了许多新的功能和工具,这些新功能使得开发者可以更容易地构建高质量的应用程序。一些新的功能包括新的QtQuick Controls模块,它们提供了一些新的控件和样式,另外还有Qt 3D模块,用于构建3D应用程序。除此之外,Qt5.4.1还提供了Qt Network模块,用于网络通信;Qt WebKit模块,用于网页浏览器开发。 总而言之,Qt5.4.1是一个非常强大的跨平台框架,它可以帮助开发者在Linux平台上快速构建高质量的GUI应用程序。Qt5.4.1不仅提供了各种组件和工具,还可以为开发者节省时间和精力,让他们更专注于实现应用程序本身。 ### 回答2: Qt是一款跨平台的C++应用程序开发框架,Qt5.4.1是该框架的一个版本,适用于在Linux操作系统上进行应用程序开发。Qt5.4.1提供了丰富的图形用户界面、网络通信、数据库访问、多媒体处理等功能模块,使得开发者能够快速轻松地创建高质量的应用程序。Qt5.4.1在Linux上的应用开发通常需要使用Qt Creator进行开发工作,可以通过apt-get命令进行安装。在进行Qt应用程序开发的过程中,需要掌握一定的C++编程基础,并且了解Qt框架的相关知识和API函数的使用方法。Qt5.4.1已经得到广泛应用,在各种类型的应用开发中都有所体现,比如工业控制、嵌入式开发、桌面应用程序等。借助于Qt5.4.1的高度可移植性和跨平台特性,开发者可以快速地将一个应用程序跑在不同的平台上,实现高效、灵活的开发和发布。综上所述,Qt5.4.1 for Linux是一个非常实用的C++应用程序开发框架,可以帮助开发者快速高效地创建高质量的应用程序。 ### 回答3: Qt 5.4.1是一种跨平台的应用程序框架,它允许开发人员编写具有GUI界面的软件,并能在Windows,Mac,Linux等各种操作系统上运行。Qt 5.4.1适用于Linux操作系统,包括各种发行版,例如Ubuntu,Fedora,Debian等。 有一些重要的特性使得Qt 5.4.1在Linux系统上优秀。首先,Qt 5.4.1为开发者提供了一整套GUI工具和库,让他们可以创建出具有吸引力的GUI应用程序。此外,Qt 5.4.1可以很好的适应Linux平台并与其兼容,因此它能够更好地发挥应用程序的性能和速度。此外,Qt 5.4.1还提供了许多工具和库,开发者可以利用它们轻松地创建出多媒体应用程序,例如音频和视频应用程序。 总体来说,Qt 5.4.1是一种非常强大的跨平台的应用程序框架,Linux用户可以充分利用它开发自己的应用程序。无论是专业开发者还是普通用户,Qt 5.4.1都为他们提供了一个广泛的工具和库,可以用来编写出令人印象深刻的应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值