下载编译 Qt 5 for Android 并新建工程

来源:互联网 发布:mac哑光修容粉怎么选 编辑:程序博客网 时间:2024/05/29 11:45

步骤详见: http://wiki.qt.io/Android
步骤1-4略
5.安装jdk1.6.0.45: http://blog.csdn.net/zjclugger/article/details/11762085
6.配置QT for Android,忽略不支持的模块:
(配置的参数位于QT源码根目录qt-everywhere-opensource-src-5.5.0/qtbase/configure文件中)
新建Qt的安装目录:
mkdir qt-hxm 
在QT源码根目录qt-everywhere-opensource-src-5.5.0/下执行:
./configure -xplatform android-g++ -nomake tests -nomake examples -android-ndk /home/valente/android-ndk-r10d -android-sdk /home/valente/android-sdk-linux -android-ndk-host linux-x86_64 -android-toolchain-version 4.9 -skip qttranslations -skip qtwebkit -skip qtserialport -skip qtwebkit-examples -no-warnings-are-errors -android-arch mips -prefix /home/valente/qt-hxm
7.编译幷安装QT:
make
make install
8.进入如下目录,执行qtcreator:
cd ~/Qt5.5.0/Tools/QtCreator/bin
./qtcreator

9.打开Qt Creator后,点击 工具(Tools) -> 选项(Options) -> Android ,设置Android SDK , Android NDK , JDK 的安装路径
10.点击 工具(Tools) -> 选项(Options) -> 构建和运行(Build & Run) -> Qt Versions,在手动设置中添加 qmake ,文件路径为:/home/valente/qt-hxm/qmake
11.创建一个工程并进行选项配置:
步骤详见(Qt 5.2.0,Qt Creator 3.0): http://blog.csdn.net/foruok/article/details/23528293
Qt5.5.0,Qt Creator 3.5.0中,与上述选项配置中不同的地方参考: http://blog.csdn.net/foruok/article/details/41907237
创建完成后在工程中的 .pro 文件中添加makefile的编译参数:
QMAKE_CFLAGS =`-mno-odd-spreg`
QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
12.运行后弹出对话框(bin文件夹),将生成的 apk 文件拷贝到其生成目录的父目录,
cd ~/hxm-qt-project/build-HelloQTAndroid-Android_for_mips_GCC_4_9_Qt_5_5_0_bb9c75-Release/android-build/bin ; ls
cp QtApp-release-signed.apk ../
cd ../libs/mips ; ls

file libHelloQTAndroid.so ,查看文件是否为32位。

将apk文件 adb push 到真机的 data/app 上,可以看到运行效果。

相关参考:
1.百度搜索 “mips fpreg”,找到 “MIPS Options - Using the GNU Compiler Collection (GCC)”: http://gcc.gnu.org/onlinedocs/gcc/MIPS-Options.html
其中有关于编译选项 -modd-spreg 和 -mno-odd-spreg 的介绍。
2.百度搜索 “ .pro文件 QMAKE_CFLAGS ” ,找到 “Qt 常用命令,宏,pro文件格式-xutianxi-ChinaUnix博客” : http://blog.chinaunix.net/uid-23670869-id-2391678.html
找到 “QT中Makefile文件的修改_雨儿_新浪博客”: http://blog.sina.com.cn/s/blog_4ba5b45e0102ea96.html ,其中有关于编译参数的添加方法。
3.GCC使用-MIPS64选项编译出错,原因是什么?
龙芯3A/3B处理器使用GS464系列处理器核,支持MIPS64指令集,但在桌面应用最为常见的O32 ABI下,只能使用16个偶数号浮点寄存器。若使用了奇数号浮点寄存器,则会产生计算结果错误。
GCC工具链默认的-mips64选项会对奇数号寄存器进行分配,因此,为了适配龙芯3A/3BO32下编译程序时,必须使用修改寄存器分配后的工具链才能编译出正确的程序。因此,请使用龙芯官方提供的最新版GCC工具链。


0 0
原创粉丝点击