LINUX下QT FOR ARM开发环境搭建过程 (使用qt-x11-opensource-src-4.5.2.tar.gz进行编译)
在PC上,我们需要得到两个版本的Qt,分别是:Qt-4.5.2和QtEmbedded-4.5.2-arm。前者包括了Qt Designer等基本工具,用于在PC上对程序的开发调试,使我们能确保程序放到板子上之前就符合设计的要求;然后我们用后者的库将调试好的程序编译成能在arm-linux平台上运行的程序。
Qt-4.5.2我们用从网上下载到的qt-x11-opensource-src-4.5.2.tar.gz编译后安装得到;QtEmbedded-4.5.2-arm我们用qt-embedded-linux-opensource-src-4.5.2.tar.gz编译后安装得到,qt-embedded-linux-opensource-src-4.5.2.tar.gz还可以编译成QtEmbedded-4.5.2-X86,但我们不需要。在编译qt-embedded-linux-opensource-src-4.5.2.tar.gz之前,我们必须准备好arm-linux-gcc交叉编译工具,我用的是arm-linux-gcc-3.4.1。
所以我们先要准备好的软件包有:
1. qt-x11-opensource-src-4.5.2.tar.gz;
2. qt-embedded-linux-opensource-src-4.5.2.tar.gz;
3. arm-linux-gcc-3.4.1.tar.bz2
Pc的操作系统是:LINUX-ubuntu8.04。下面是我的具体编译安装过程:
(一) Qt-4.5.2的获得:
将qt-x11-opensource-src-4.5.2.tar.gz复制到目录:/home/chh/Project/qt,然后解压:
#tar zxvf qt-x11-opensource-src-4.5.2.tar.gz
得到一个新目录:qt-x11-opensource-src-4.5.2
cd进入这个目录,准备开始编译。
在终端中这样操作:
#./configure –qvfb //编译配置,此过程大概历时几分钟;
#make //正式编译,过程漫长,大概2个多小时;
#cd tools/qvfb //进入此目录,准备对它进行编译
#make //编译,几分钟
#cd ../.. //回到qt-x11-opensource-src-4.5.2主目录,准备安装
#make install //安装,十几分钟吧;此步必须以root身份完成,否则无法建立目录
以上过程完成后,我们可以在/usr/local/下看到一个Trolltech目录,进入该目录发现Qt-4.5.2
目录已经出现,进入里面的bin目录,Designer等工具已经可以使用了。编译过程相当费时,所以可以
直接拷贝已经编译过的源码,直接make install。
至此,Qt-4.5.2的安装已经顺利完成。
(二) QtEmbedded-4.5.2-arm的获得:
在编译安装qt-embedded-linux-opensource-src-4.5.2之前,必须先配置好arm-linux-gcc,
将arm-linux-gcc-3.4.1.tar.bz2解压到目录:/usr/local下,此时local下出现一个名为arm的目录,然后配置好环境变量:在/etc/profile添加一句:export PATH=$PATH:/usr/local/arm/3.4.1/bin,保存后#source /etc/profile一下,让它即时生效。 否则下面的编译过程会提示找不到arm-linux-gcc命令。 现在可以开始编译了:
将qt-embedded-linux-opensource-src-4.5.2.tar.gz复制到目录:/home/chh/Project/qt, 然后解压:#tar zxvf qt-embedded-linux-opensource-src.tar.gz, 得到新目录qt-embedded-linux-opensource-src-4.5.2。
进入qt-embedded-linux-opensource-src-4.5.2目录,首先进行configure。 这里的参数很重要,必不可少的是-embedded arm,所以最简单的配置信息可以这样:
./configure \
-embedded arm
然后回车,就开始configure了,我的参数设置和参考文章一样,裁减了很多,减少了编译时间:
./configure \
-release \
-shared \
-fast \
-no-largefile \
-qt-sql-sqlite \
-no-qt3support \
-no-xmlpatterns \
-no-mmx \
-no-3dnow \
-no-sse \
-no-sse2 \
-no-svg \
-no-webkit \
-qt-zlib \
-qt-gif \
-qt-libtiff \
-qt-libpng \
-qt-libmng \
-qt-libjpeg \
-make libs \
-xplatform qws/linux-arm-g++ \
-nomake tools \
-nomake examples \
-nomake docs \
-nomake demo \
-no-nis \
-no-cups \
-no-iconv \
-no-dbus \
-no-openssl \
-embedded arm \
-little-endian \
-qt-freetype \
-depths 16,18 \
-qt-gfx-linuxfb \
-no-gfx-transformed \
-no-gfx-multiscreen \
-no-gfx-vnc \
-no-gfx-qvfb \
-qt-kbd-usb \
-no-glib
之后就可以编译了,#make,漫长等待后再 #make install。Make install还是需要root权限。
完成后,在/usr/local/Trolltech下多了一个目录:QtEmbedded-4.5.2-arm。
http://iwanttobe09.blog.163.com/blog/static/13178730520091041349207/
LINUX下QT FOR ARM开发环境搭建过程 (使用qt-x11-opensource-src-4.5.2.tar.gz进行编译)的更多相关文章
- Linux学习心得之 Linux下命令行Android开发环境的搭建
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...
- Qt for Android开发环境搭建及测试过程记录
最近学习了Qt的QML编程技术,感觉相较于以前的QtGUI来说更方便一些,使用QML可以将界面与业务逻辑解耦,便于开发. QML支持跨平台,包括支持Android平台,因此可以使用Qt的QML进行An ...
- 基于全志H3芯片的ARM开发环境搭建
基于全志H3芯片的ARM开发环境搭建 最近买了个友善之臂的NanoPi M1板子,又在网上申请了个NanoPi NEO板子,这两个都是基于全志H3芯片的Crotex-A7四核ARM开发板,两个板子可以 ...
- QT树莓派交叉编译开发环境搭建
QT树莓派交叉编译开发环境搭建 - JerryZone <Cross-compiling Qt Embedded 5.5 for Raspberry Pi 2> <Qt for Em ...
- mac10.9下eclipse的storm开发环境搭建
--------------------------------------- 博文作者:迦壹 博客地址:http://idoall.org/home.php?mod=space&uid=1& ...
- 《Node.js入门》CentOS 6.5下Node.js Web开发环境搭建笔记
近期想尝试一下英特尔的基于WebRTC协同通信开发套件,所以须要在本地搭建Node.js Web的开发測试环境. 这里讲的是CentOS 下的搭建方法.使用Windows的小伙伴请參考: <No ...
- linux下怎么安装Go开发环境?linux部署golang
linux下怎么安装Go开发环境?linux部署golang 0.请自行安装SSH远程工具 1. SSH远程登录你的linux服务器 2. yum install mercurial安装 me ...
- Linux下MySQL/MariaDB Galera集群搭建过程【转】
MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...
- Windows10系统下Hadoop和Hive开发环境搭建填坑指南
前提 笔者目前需要搭建数据平台,发现了Windows系统下,Hadoop和Hive等组件的安装和运行存在大量的坑,而本着有坑必填的目标,笔者还是花了几个晚上的下班时候在多个互联网参考资料的帮助下完成了 ...
随机推荐
- Android GPS获取当前位置信息
package com.example.gpstest; import org.apache.http.util.LangUtils; import android.content.Context; ...
- Android真机调试不打印日志解决
1.在拨号界面输入:*#*#2846579#*#* 进入测试菜单界面. 2.Project Menu–后台设置–LOG设置 3.LOG开关–LOG打开 LOG级别设置–VERBOSE 4.Dump&a ...
- C++ Lambda表达式基本用法(言简意赅,非常清楚)
创建一个匿名函数并执行.Objective-C采用的是上尖号^,而C++ 11采用的是配对的方括号[].实例如下: 1 2 3 4 5 6 7 8 9 #include <iostream> ...
- hdu4360 spfa+分割点
标题要求必须按照L O V E 行走为了,你必须至少有一个完整的LOVE.说明可以通过同一个点反复 对每一个点拆分为4个点.分别为从L,O,V,E到达. 起始点看做是从E到达的 spfa时发现当前点距 ...
- WPF 线程:使用调度程序构建反应速度更快的应用程序
原文:WPF 线程:使用调度程序构建反应速度更快的应用程序 作者:Shawn Wildermuth 原文:http://msdn.microsoft.com/msdnmag/issues/07/10/ ...
- MySQL第五个学习笔记 该数据表的操作
MySQL在创建表,创建.frm文件保存表和列定义.索引存储在一个.MYI(MYindex)且数据存储在有.MYD(MYData)扩展名的文件里. 一.用SHOW/ DESCRIBE语句显示数据表 ...
- C#调用WebKit内核
原文:C#调用WebKit内核 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u013564470/article/details/80255954 ...
- Matlab随笔之矩阵入门知识
原文:Matlab随笔之矩阵入门知识 直接输入法创建矩阵 – 矩阵的所有元素必须放在方括号“[ ]”内: – 矩阵列元素之间必须用逗号“,”或空格隔开,每行必须用“;”隔开 – 矩阵元素可以是任何不含 ...
- JDK10下安装Eclipse photon 提示Java for Windows Missing
这两天把服务器清理了一下,操作系统也重新装了,没办法啊,就是喜欢倒腾...在重新安装软件的时候,我又到各个官网去看了软件的最新版本,其中就去了JDK和Eclipse的官网溜达了一圈. 很久没有更新过自 ...
- poj1548Robots dfs实践
//搜索每一行 //该生产线的整点已被清除 //然后位置,然后转移到下一个步走的最后一点 //然后,所有点的下面一行清晰 //然后重复上面的操作 #include<iostream> #i ...