在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进行编译)的更多相关文章

  1. Linux学习心得之 Linux下命令行Android开发环境的搭建

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...

  2. Qt for Android开发环境搭建及测试过程记录

    最近学习了Qt的QML编程技术,感觉相较于以前的QtGUI来说更方便一些,使用QML可以将界面与业务逻辑解耦,便于开发. QML支持跨平台,包括支持Android平台,因此可以使用Qt的QML进行An ...

  3. 基于全志H3芯片的ARM开发环境搭建

    基于全志H3芯片的ARM开发环境搭建 最近买了个友善之臂的NanoPi M1板子,又在网上申请了个NanoPi NEO板子,这两个都是基于全志H3芯片的Crotex-A7四核ARM开发板,两个板子可以 ...

  4. QT树莓派交叉编译开发环境搭建

    QT树莓派交叉编译开发环境搭建 - JerryZone <Cross-compiling Qt Embedded 5.5 for Raspberry Pi 2> <Qt for Em ...

  5. mac10.9下eclipse的storm开发环境搭建

    --------------------------------------- 博文作者:迦壹 博客地址:http://idoall.org/home.php?mod=space&uid=1& ...

  6. 《Node.js入门》CentOS 6.5下Node.js Web开发环境搭建笔记

    近期想尝试一下英特尔的基于WebRTC协同通信开发套件,所以须要在本地搭建Node.js Web的开发測试环境. 这里讲的是CentOS 下的搭建方法.使用Windows的小伙伴请參考: <No ...

  7. linux下怎么安装Go开发环境?linux部署golang

    linux下怎么安装Go开发环境?linux部署golang  0.请自行安装SSH远程工具 1.  SSH远程登录你的linux服务器 2.   yum install mercurial安装 me ...

  8. Linux下MySQL/MariaDB Galera集群搭建过程【转】

    MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...

  9. Windows10系统下Hadoop和Hive开发环境搭建填坑指南

    前提 笔者目前需要搭建数据平台,发现了Windows系统下,Hadoop和Hive等组件的安装和运行存在大量的坑,而本着有坑必填的目标,笔者还是花了几个晚上的下班时候在多个互联网参考资料的帮助下完成了 ...

随机推荐

  1. Lua转让C功能

    在上一篇文章中(C调用lua函数)中.讲述了怎样用c语言调用lua函数,通常,A语言能调用B语言,反过来也是成立的.正如Java 与c语言之间使用JNI来互调.Lua与C也能够互调. 当lua调用c函 ...

  2. win10下安装docker步骤(一)

    一.启用Hyper-V 打开控制面板 - 程序和功能 - 启用或关闭Windows功能,勾选Hyper-V,然后点击确定即可,如图: 请注意电脑默认的Hyper-V虚拟机监控程序是不能进行勾选的,需要 ...

  3. POJ 1418 基本操作和圆 离散弧

    Viva Confetti Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 761   Accepted: 319 Descr ...

  4. 使用 jquery 的 上传文件插件 uploadify 3.1 配合 java 来做一个简单的文件上次功能。并且在界面上有radio 的选择内容也要上传

    使用 jquery 的 上传文件插件 uploadify 3.1 配合 java 来做一个简单的文件上次功能.并且在界面上有radio 的选择内容也要上传 uploadify 插件的 下载和文档地址  ...

  5. Java 开源博客——B3log Solo 0.6.5 正式版发布了!

    Java 开源博客 -- B3log Solo 0.6.5 正式版发布了!欢迎大家下载. 该版本主要是改善细节体验,也是 B3log Solo 的最后一个大版本. 这个版本发布后,B3log Solo ...

  6. Android子线程中更新UI的4种方法

    方法一:用Handler 1.主线程中定义Handler: Handler mHandler = new Handler() { @Override public void handleMessage ...

  7. 机器学习: Tensor Flow +CNN 做笑脸识别

    Tensor Flow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库.节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数 ...

  8. 使用batch批处理做目录及流程选择

    @echo off rem -- http://phpnow.org rem -- YinzCN_at_Gmail.com setlocal enableextensions if exist Pn\ ...

  9. WPF特效-实现弧形旋转轮播图

    原文:WPF特效-实现弧形旋转轮播图 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u013224722/article/details/77004 ...

  10. arcserver开发小结(三)

    一.关于网络数据集的制作 由于要做实现网络分析的功能,而手中却没有网络数据集,关于网络数据集的制作,网上也有不少的资料.我参考的是ESRI为我们提供的帮助文档(Network_Analyst_Tuto ...