Chinaunix首页 | 论坛 | 博客
  • 博客访问: 304163
  • 博文数量: 111
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 672
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-05 23:41
文章分类

全部博文(111)

文章存档

2017年(111)

我的朋友

分类: LINUX

2017-06-19 18:15:27

《QT on Android核心编程》




if your user name :niuyi


mkdir /home/niuyi/qtforandroid
cd /home/niuyi/qtforandroid




1、安装jdk8(选这个)
添加ppa源
sudo add-apt-repository ppa:openjdk-r/ppa
更新并等待自动安装
sudo apt-get update
sudo apt-get install openjdk-8-jdk
以上便安装成功,如果系统中存在多个jdk版本,用以下命令切换并选择合适版本即可
sudo update-alternatives --config java
sudo update-alternatives --config javac


sudo gedit /etc/profile.d/jdk8.sh
添加下面内容:
{
echo "set java environment"
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 # 注意和安装路径一致
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH


}


测试Java运行环境
java -version
javac -version




2、linux 64 安装ant


参考
https://my.oschina.net/mynote/blog/92048


linux 64 bit ANT



安装:
tar jxvf apache-ant-1.9.7-bin.tar.bz2


sudo gedit /etc/profile.d/ant.sh
添加下面内容:
{
#set ant environment
echo "set ant environment"
export ANT_HOME=/home/niuyi/qtforandroid/apache-ant-1.9.7 
export PATH=$PATH:$ANT_HOME/bin


}


测试
ant -v




3、安装NDK   
linux 64bit ndk 32bit:(选这个)
linux 64 bit NDK 下载



安装方法:
请确保你已安装了Android SDK
chmod a+x android-ndk-r10d-linux-x86_64.bin
./android-ndk-r10d-linux-x86_64.bin


sudo gedit /etc/profile.d/ndk.sh
{
#set ndk environment


echo "set ndk environment"
# NDK=/home/niuyi/qtforandroid/android-ndk-r10 # ndk 64bit 注意和安装路径一致
NDK=/home/niuyi/qtforandroid/android-ndk-r10d # ndk 32bit 注意和安装路径一致
export PATH=$NDK:$PATH


}








4、安装Android SDK


参考
http://www.cnblogs.com/sink_cup/archive/2011/10/31/ubuntu_x64_android_sdk_java.html





linux 64 bit The android sdk tools

tar -zxvf android-sdk_r24.4.1-linux.tgz


sudo gedit /etc/profile.d/android_sdk.sh
添加下面内容:
{
#set sdk for android environment
echo "set sdk for android environment"
export ANDROID_HOME=/home/niuyi/qtforandroid/android-sdk-linux
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
export JAVA_CMD=/usr/lib/jvm/java-7-openjdk-amd64/bin/java


}




source /etc/profile


启动Android SDK Manager:
android


根据需要,选择最新版的Android SDK Platform-tools、Samples for SDK等等下载即可(约2.6GB)。
注意:一定要安装Android Support Repository,否则gradle会报错。


如果下载速度慢,有2个办法:
a、配hosts:ping g.cn,为dl-ssl.google.com设置hosts,并且在Android SDK Manager——》菜单——》Tools——》Options中选中“Force https to http”
b、国内cdn镜像下载:todo








5、设置adb
cd home/niuyi/qtforandroid/android-sdk-linux/platform-tools
./adb devices


问题:如果缺少库libstdc++.so.6或启动不了则:
sudo apt-get install libstdc++6:i386 lib32stdc++6 lib32z1 lib32ncurses5










6、Ubuntu 14.04上安装Android Studio
sudo apt-add-repository ppa:paolorotolo/android-studio
sudo apt-get update
sudo apt-get install android-studio


如果要把Android Studio添加到启动栏,你需要如下操作
打开Android Studio,点击Configure选择Create Desktop Entry,这样Android Studio应该在dash中创建快捷方式了






7、qt creator安装
ubuntu 14.04 64bit 下qt5.6 for android下载地址:



chmod a+x qt-opensource-linux-x64-android-5.6.0.run
 ./qt-opensource-linux-x64-android-5.6.0.run




参考:
http://blog.csdn.net/u013600225/article/details/52078220








问题1 使用QT编译Android项目时总是提示头文件编译错误,类似下面


G:\androidsdk\android-ndk-r10d\sources\cxx-stl\gnu-libstdc++\4.9\include\cstdlib:72: error: stdlib.h: No such file or directory
 #include
G:\androidsdk\android-ndk64-r10-windows-x86_64\android-ndk-r10\sources\cxx-stl\gnu-libstdc++\4.9\include/cwchar:44:19: fatal error: wchar.h: No such file or directory
 #include
compilation terminated.
makefile:1080: recipe for target 'xxx.obj' failed


解决方案:                   ^
来自一个国外网友的解决方案:

以下是解决答案:
Solved.
解决方案:It appeared I had a 64-bit NDK installed even though I thought I had downloaded a 32-bit NDK.
I blew away all NDK remnants and downloaded new 32-bit r10 NDK and now my Android x86 emulator is launching my Qt hello world app.
android-ndk32-r10-darwin-x86.tar.bz2
意思是要统一使用32位的NDK,QT Creator.
解决方案:我的解决方案也是这样,我的机器是64位,我NDK安装了64位,但是QTCreator是32位,这样就会有问题,把NDK重新下载一个32位的就OK了


问题2 编译应用程序出现:
Error:Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0


解决:
更换JDK版本为1.8


































以下为参考资源
************************************************************************************************************************************************
















if your user name :niuyi


mkdir /home/niuyi/qtforandroid
cd /home/niuyi/qtforandroid


1、安装java1.7 for android 5.1
chmod +x jdk-7u79-linux-x64.tar.gz
tar xvf jdk-7u79-linux-x64.tar.gz
sudo gedit /etc/profile.d/jdk7.sh
添加下面内容:
{
echo "set java 7 environment"
JAVA_HOME=/home/niuyi/qtforandroid/jdk1.7.0_79 # 注意和安装路径一致
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH


}


source /etc/profile


测试
java -version








2、安装Android SDK


参考
http://www.cnblogs.com/sink_cup/archive/2011/10/31/ubuntu_x64_android_sdk_java.html



安装jdk7


sudo apt-get install openjdk-7-jdk




安装jdk8(选这个)
添加ppa源
sudo add-apt-repository ppa:openjdk-r/ppa
更新并等待自动安装
sudo apt-get update
sudo apt-get install openjdk-8-jdk
以上便安装成功,如果系统中存在多个jdk版本,用以下命令切换并选择合适版本即可
sudo update-alternatives --config java
sudo update-alternatives --config javac


sudo gedit /etc/profile.d/jdk7.sh
添加下面内容:
{
echo "set java environment"
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 # 注意和安装路径一致
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH


}


测试Java运行环境
java -version
javac -version












linux 64 bit The android sdk tools

tar -zxvf android-sdk_r24.4.1-linux.tgz


sudo gedit /etc/profile.d/android_sdk.sh
添加下面内容:
{
#set sdk for android environment
echo "set sdk for android environment"
export ANDROID_HOME=/home/niuyi/qtforandroid/android-sdk-linux
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
export JAVA_CMD=/usr/lib/jvm/java-7-openjdk-amd64/bin/java


}




source /etc/profile


启动Android SDK Manager:
android


根据需要,选择最新版的Android SDK Platform-tools、Samples for SDK等等下载即可(约2.6GB)。
注意:一定要安装Android Support Repository,否则gradle会报错。


如果下载速度慢,有2个办法:
a、配hosts:ping g.cn,为dl-ssl.google.com设置hosts,并且在Android SDK Manager——》菜单——》Tools——》Options中选中“Force https to http”
b、国内cdn镜像下载:todo






3、linux 64 安装ant


参考
https://my.oschina.net/mynote/blog/92048


linux 64 bit ANT



安装:
tar jxvf apache-ant-1.9.7-bin.tar.bz2


sudo gedit /etc/profile.d/ant.sh
添加下面内容:
{
#set ant environment
echo "set ant environment"
export ANT_HOME=/home/niuyi/qtforandroid/apache-ant-1.9.7 
export PATH=$PATH:$ANT_HOME/bin


}


测试
ant -v








4、linux 64 bit NDK
linux 64bit , ndk 64bit:
android-ndk64-r10-linux-x86_64.tar.bz2

 
安装方法:
请确保你已安装了Android SDK
tar jxvf android-ndk64-r10-linux-x86_64.tar.bz2


sudo gedit /etc/profile.d/ndk.sh
{
#set ndk environment


echo "set ndk environment"
NDK=/home/niuyi/qtforandroid/android-ndk-r10 # ndk 64bit 注意和安装路径一致
# NDK=/home/niuyi/qtforandroid/android-ndk-r10d # ndk 32bit 注意和安装路径一致
export PATH=$NDK:$PATH
}


source /etc/profile


测试
ndk-build
输出
Android NDK: Could not find application project directory !    
Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.    
/home/niuyi/qtforandroid/android-ndk-r10/build/core/build-local.mk:148: *** Android NDK: Aborting    .  Stop.


参考:
http://blog.csdn.net/davebobo/article/details/52446986






linux 64bit ndk 32bit:(选这个)
linux 64 bit NDK 下载



安装方法:
请确保你已安装了Android SDK
chmod a+x android-ndk-r10d-linux-x86_64.bin
./android-ndk-r10d-linux-x86_64.bin


sudo gedit /etc/profile.d/ndk.sh
{
#set ndk environment


echo "set ndk environment"
# NDK=/home/niuyi/qtforandroid/android-ndk-r10 # ndk 64bit 注意和安装路径一致
NDK=/home/niuyi/qtforandroid/android-ndk-r10d # ndk 32bit 注意和安装路径一致
export PATH=$NDK:$PATH


}








假设解压出来的目录在path/to/ndk下
在android studio工程的local.properties文件中加入 ndk.dir=path/to/ndk 
或者设置ANDROID_NDK_HOME环境变量为path/to/ndk  比如在~/.bashrc中加上 export ANDROID_NDK_HOME=/opt/android-ndk-r10d然后重启






------------------------------------------------------------------------------------------------------------


5、qt creator安装
ubuntu 14.04 64bit 下qt5.6 for android下载地址:



chmod a+x qt-opensource-linux-x64-android-5.6.0.run
 ./qt-opensource-linux-x64-android-5.6.0.run




参考:
http://blog.csdn.net/u013600225/article/details/52078220




6、设置adb
cd home/niuyi/qtforandroid/android-sdk-linux/platform-tools
./adb devices


问题:如果缺少库libstdc++.so.6或启动不了则:
sudo apt-get install libstdc++6:i386 lib32stdc++6 lib32z1 lib32ncurses5
































6、Ubuntu 14.04上安装Android Studio
sudo apt-add-repository ppa:paolorotolo/android-studio
sudo apt-get update
sudo apt-get install android-studio


如果要把Android Studio添加到启动栏,你需要如下操作
打开Android Studio,点击Configure选择Create Desktop Entry,这样Android Studio应该在dash中创建快捷方式了
































问题1 使用QT编译Android项目时总是提示头文件编译错误,类似下面


G:\androidsdk\android-ndk-r10d\sources\cxx-stl\gnu-libstdc++\4.9\include\cstdlib:72: error: stdlib.h: No such file or directory
 #include
G:\androidsdk\android-ndk64-r10-windows-x86_64\android-ndk-r10\sources\cxx-stl\gnu-libstdc++\4.9\include/cwchar:44:19: fatal error: wchar.h: No such file or directory
 #include
compilation terminated.
makefile:1080: recipe for target 'xxx.obj' failed


解决方案:                   ^
来自一个国外网友的解决方案:

以下是解决答案:
Solved.
解决方案:It appeared I had a 64-bit NDK installed even though I thought I had downloaded a 32-bit NDK.
I blew away all NDK remnants and downloaded new 32-bit r10 NDK and now my Android x86 emulator is launching my Qt hello world app.
android-ndk32-r10-darwin-x86.tar.bz2
意思是要统一使用32位的NDK,QT Creator.
解决方案:我的解决方案也是这样,我的机器是64位,我NDK安装了64位,但是QTCreator是32位,这样就会有问题,把NDK重新下载一个32位的就OK了
阅读(1861) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~