一、前期软件准备:

1 、虚拟机fedora9。到fedora官网下载,地址 http://fedoraproject.org/   版本推荐使用fedora9,在vm内安装,并且不安装vmware tools。

2、qt-creator 图形化界面开发软件   。 Linux/X11 32位 的 Qt Creator 1.3.1 二进制软件,qt-creator-linux-x86-opensource-1.3.1.bin 地址         http://qt.nokia.com/downloads/qt-creator-binary-for-linux-x11-32-bit ;

3、交叉编译器arm-linux-gcc 。下载地址:http://www.arm9.net/download.asp

4、下载tslib1. 地址 :http://www.arm9home.net/job.php?action-download-pid-tpc-tid-5161-aid-1004.html

http://www.arm9home.net/job.php?action-download-pid-tpc-tid-5161-aid-1005.html

记得在windows下先解压然后再放到linux环境下。

二、安装交叉编译环境。

在root目录下建立tmp文件夹,将qt-everywhere-opensource-src-4.6.2.tar.gz直接解压后复制2分,分别命名为pc、x86、arm。

1. 编译 PC 版:
cd 进入pc目录
#./configure        //
# gmake
# gmake install
这个安装过程很长,几乎长达四五小时,基本你开着虚拟机你就可以去睡觉去了,这个时候最好而且是不要将虚拟机最小话,因为这样的编译需要耗费电脑cpu极容易造成程序未响应,其中 gmake命令可以和gmake install一起用:gmake&&gmake install 就是等待gmake执行完就执行gmake install,因为gmake这个过程是相当长时间的。

2. 编译嵌入式x86版:
进入x86目录
# ./configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb
# gmake
# gmake install

安装过程比较长,没有碰到过错误。

编译安装PC版中的 qvfb:
进入pc/tools/qvfb/目录
#make
编译完毕,将pc/bin目录下的qvfb文件复制到/usr/local/Trolltech/QtEmbedded-4.6.2/bin目录。

3、编译tslib对触摸屏支持:
   tslib1.4.tar.gz,解压后:
# ./configure --prefix=/usr/local/tslib/ --host=arm-linux ac_cv_func_malloc_0_nonnull=yes
# make
# make install

这一步为后面的编译arm版做准备。

4. 编译嵌入式arm版(需要 arm-linux-gcc 的支持):
  
   关于 arm-linux-gcc 交叉编译器的安装就是将其在压缩包解压,然后在该目录下执行命令:./configure 然后加上环境变量 命令:export PATH=/usr/local/arm/opt/FriendlyARM/toolschain/4.4.3/bin:$PATH
 
# ./configure   
以下为./configure 这个的命令的参数 ,关于这些参数的作用可以执行命令 configure -embedded –help 查看
-prefix /usr/local/Trolltech/QtEmbedded-4.6.2-arm \ 
-opensource \
-confirm-license \
-release -shared \
-embedded arm \
-xplatform qws/linux-arm-g++ \
-depths 16,18,24 \
-fast \
-optimized-qmake \
-pch \
-qt-sql-sqlite \
-qt-libjpeg \
-qt-zlib \
-qt-libpng \
-qt-freetype \
-little-endian -host-little-endian \
-no-qt3support \
-no-libtiff -no-libmng \
-no-opengl \
-no-mmx -no-sse -no-sse2 \
-no-3dnow \
-no-openssl \
-no-webkit \
-no-qvfb \
-no-phonon \
-no-nis \
-no-opengl \
-no-cups \
-no-glib \
-no-xcursor -no-xfixes -no-xrandr -no-xrender \
-no-separate-debug-info \
-nomake examples -nomake tools -nomake docs \
-qt-mouse-tslib

然后

编译:# gmake

安装:# gmake install

安装完成后,在 /usr/local/Trolltech 目录中有三个文件夹:Qt-4.6.2、QtEmbedded-4.6.2、QtEmbedded-4.6.2-arm。 这三个文件夹里面包含了编译qt4程序的qmake。

到目前为止大概花了十五个小时,这可是考验耐心的时刻呀!!!!

5、安装Qt-creator-1.3.1
把下载的qt-creator-linux-x86-opensource-1.3.1.bin文件拷到一个目录(如前面的/root/tmp目录),进入目录:

设置qt-creator-linux-x86-opensource-1.3.1.bin文件为可执行
#chmod +x qt-creator-linux-x86-opensource-1.3.1.bin

安装:
# ./ qt-creator-linux-x86-opensource-1.3.1.bin

启动安装界面,默认一路Next即可。

*如果我们下载的是Qt的SDK(qt-sdk-linux-x86-opensource-2010.02.bin),这里可以选择安装Qt的开发环境,这样,在前面安装pc版Qt那步就可以省了,关键是可以省出很多时间的。

6、Qt-creator开发环境的配置
启动Qt-creator。

在Qt-creator菜单栏Tools—〉Options…打开Options窗口。
在Options界面左侧,点击Qt4—〉Qt Versions右侧显示Qt Versions设置界面。

在Qt Versions界面中点击那个蓝色的大“╋”号图标
在下方Version Name:文本框内输入Qt的版本名,可以随便填,能区分各个版本即可(如pc版取Qt4.6.2-pc、x86版取QtE4.6.2-x86、arm版取QtE4.6.2-arm)。

单击Qmake Location:右侧Browse…按钮,在弹出的“Select QMake Executable”窗口中找到对应版本的qmake程序(按照我们前面安转的,pc版路径:/usr/local/Trolltech/Qt-4.6.2/bin/qmake,x86版路径:/usr/local/Trolltech/QtEmbedded-4.6.2/bin/qmake,arm版路径:/usr/local/Trolltech/QtEmbedded-4.6.2-arm/bin/qmake),单击打开,回到Qt Versions界面。

回到Qt Versions界面,单击Debugging Helper:右侧Rebuild按钮,等待片刻,看到Debugging Helper:后出现一个绿色的“√”即可。

同理完成其他版本的添加。

添加完毕,单击OK按钮关闭Options窗口。

现在基本完成了交叉编译环境完成一大半了,今天暂且为止,有空再完善下。

qt4.7.0 交叉编译环境搭建经验总结的更多相关文章

  1. android 5.0开发环境搭建

    Android 5.0 是 Google 于 2014 年 10 月 15 日发布的全新 Android 操作系统.本文将就最新的Android 5.0 开发环境搭建做详细介绍. 工具/原料 jdk- ...

  2. 【转2】Appium 1.6.3 在Xcode 8 (真机)测试环境搭建 经验总结

    Appium 1.6.3 在Xcode 8 (真机)测试环境搭建经验总结 关于 Appium 1.6.3 在Xcode 8, 1真机上环境搭建问题更多,写此文章,供大家参考,让大家少走弯路. 在开始i ...

  3. 【转1】Appium 1.6.3 在Xcode 8, iOS 10.2(模拟器)测试环境搭建 经验总结

    Appium 1.6.3 在Xcode 8, iOS 10.2(模拟器)测试环境搭建 经验总结 关于 Appium 1.6.3 在Xcode 8, 10.2 的iOS模拟器上的问题很多,本人也差点放弃 ...

  4. Ubuntu14.04配置gcc4.4.4+Qt4.8.4交叉编译环境

    安装32位程序运行支持 sudo apt-get install lib32stdc++6 lib32z1 lib32ncurses5 lib32bz2-1.0 可能报错: lib32stdc++6 ...

  5. YA157C交叉编译环境搭建

    目录 1.开发板简介 3.主机搭建交叉编译环境 4.编译第一个ARM Linux程序--Hello World 5.在开发板上运行Hello World程序 6.ssh登录开发板 7.注意 8.she ...

  6. Jira 6.0.5环境搭建

    敏捷开发-Jira 6.0.5环境搭建[1] 我的环境 Win7 64位,MSSql2008 R2,已经安装tomcat了 拓展环境 jira  6.0.5     百度网盘下载           ...

  7. Exynos4412交叉编译环境搭建

    Exynos4412交叉编译环境搭建 交叉编译:在PC机(x86平台)上开发程序,在ARM板上运行,提高开发.编译速度. 环境: Tiny4412SDK1506开发板 需要软件: arm-linux- ...

  8. selenium win7+selenium2.0+python环境搭建

    win7+selenium2.0+python环境搭建 by:授客 QQ:1033553122 步骤1:下载python 担心最新版的支持不太好,这里我下载的是python 2.7(selenium之 ...

  9. CentOS7 Redis5.0.5环境搭建

    CentOS7 Redis5.0.5环境搭建 1基本环境配置 CentOS Linux release 7.6.1810 (Core) redis 5.0.5 1.下载解压redis.通过wget在官 ...

随机推荐

  1. POJ 2607

    一次FLOYD,再枚举. 注意题目要求的输出是什么哦. #include <iostream> #include <cstdio> #include <cstring&g ...

  2. 安装10gR2的硬件要求

    1.至少1G的RAM. 2.RAM与swap关系: RAM                    swap 512M以上           2*RAM   (非常奇怪.至少1G的RAM.还写512的 ...

  3. GammaRay 是一个允许你查看 Qt 应用程序甚至在某种程度上修改它的独特应用,可谓是 Debugger 的良好补充

    GammaRay is a tool to poke around in a Qt-application and also to manipulate the application to some ...

  4. oc17--点语法

    // // Person.h // day13 #import <Foundation/Foundation.h> @interface Person : NSObject { // @p ...

  5. 【HDU 1846】 Brave Game

    [题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=1846 [算法] 巴什博弈 若有(m+1)个石子,显然先手不能直接取完,后手必胜 因此,我们可以把石 ...

  6. typescript 基本数据类型

    1.boolen 布尔类型 let boolen1: boolen = false; 2.number 数字类型 let num1: number = 0b110;//二进制 let num2: nu ...

  7. 一个 passive 引发的bug

    不是什么很难的东西,权且做个记录. 首先说下背景,目前的项目中,需要同时绑定 wheel 和 scroll 事件. 绑定 wheel,目的是开发 ctrl + wheel 缩放页面功能,此功能与浏览器 ...

  8. Hadoop MapReduce编程 API入门系列之分区和合并(十四)

    不多说,直接上代码. 代码 package zhouls.bigdata.myMapReduce.Star; import java.io.IOException; import org.apache ...

  9. nginx 集群简述

    1.负载均衡介绍: 负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助.其工作模式为将外部发送来的请求均匀分配到对称结构中的 ...

  10. 用命令行在本地创建一个库并上传到Github

    1  如何在本地创建一个仓库并上传到github? 基本步骤: $ mkdir blog //在桌面上创建一个叫"blog"的目录 $ cd blog //"cd blo ...