注:

1,自己 make qt-everywhere-opensource-src s时,在./configure前主动装好以下3个
sudo apt-get install libX11-dev libXext-dev libXtst-dev\

还须要 apt-get install libxrandr-dev ,否则会有以下的报错,designer 界面乱码:

 

libxrandr-dev

 

X Error: BadDrawable (invalid Pixmap or Window parameter) 9
  Major opcode: 62 (X_CopyArea)
  Resource id:  0x0

2, 在/etc/profile 中加入 环境变量
export QTDIR=/usr/local/Trolltech/Qt-4.8.6                                                                                                                                                              
 export PATH=$QTDIR/bin:$PATH  
 export MANPATH=$QTDIR/man:$MANPATH  
 export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

打算做嵌入式图像处理。计划方案嵌入式Linux+OpenCV+QT。昨天简单入门OpenCV今天看看QT,QT就先弄Linux以下的,回家之前争取把主要的摸通。然后能在板子上跑起来。

软件环境


Linux:Ubuntu 12.04 X86

QT:4.8.4

关于QT安装


QT的早期版本号和如今版本号有点变化。提供的文件也不尽相同,最新的版本号为5.0,我这里用的是4.8.4,一个完整的QT应该包含QT库、IDE也就是QT creator。在Linux下的安装中,眼下看到的主要有三种方法:

1、.bin文件直接安装。文件名称为qt-sdk-……。一个./bin直接包含了全部相关工具。安装起来最为简单方便,可是眼下的4.8.4在几个站点上已经找不到总的sdk的bin文件了,老版本号的还是能够的。

2、Ubuntu下使用atp-get安装,方法例如以下(未验证)

sudo apt-get install qt4-dev-tools #开发包   
sudo apt-get install qtcreator #IDE  
sudo apt-get install qt4-doc #开发帮助文档   
sudo apt-get install qt4-qtconfig #配置工具   
sudo apt-get install qt4-demos #DEMO源代码 QT

3、这就是本文用的方法,就是下载源代码包,自己编译安装,最为麻烦。可是本来就是学习的,况且如今仅仅能下载到源代码包,那就先学习这个方案把。

软件下载


QT有好几个下载站点,这里汇总介绍。自从诺基亚公司放弃Meego、遣散Qt开发团队以后。Qt商业版本号的站点移到了qt.digia.com。而开源版本号则放到了qt-project.org  :

1、首先是诺基亚的官方站点http://qt.digia.com/  这个是不太方便的,想高速下载的接着看后面的。

此站点须要填写username和邮箱地址,下载地址会发送到邮件里,我就把我收到的地址贴出来吧。以下是邮件中的地址汇总。

这里面的linux源代码是commercial版本号。

Qt 4.8.4 for embedded Linux

http://dist.qt.digia.com/developer/download/qt-everywhere-commercial-src-4.8.4.tar.gz

Installing Qt for embedded Linux

http://qt-project.org/doc/qt-4.8/qt-embedded-install.html

Qt Commercial Charts 1.1.0

http://dist.qt.digia.com/developer/download_charts/qt-commercial-charts-src-1.1.0.tar.gz

Qt 5.0.0 Sources

http://dist.qt.digia.com/developer/download_50/qt-everywhere-commercial-src-5.0.0.tar.gz

Qt 4.8.4 for Windows (Src and VS2008 32bit Binary)

http://dist.qt.digia.com/developer/download/qt-win-commercial-4.8.4-vs2008.exe

Qt Visual Studio Addin 1.1.11 for Qt4 (Binary)

http://dist.qt.digia.com/developer/download/qt-vs-addin-1.1.11.exe

Qt 4.8.4 for Windows (Src and VS2010 32bit Binary)

http://dist.qt.digia.com/developer/download/qt-win-commercial-4.8.4-vs2010.exe

Qt 4.8.4 for Windows (Src and MinGW 32bit Binary)

http://dist.qt.digia.com/developer/download/qt-win-commercial-4.8.4-mingw.exe

Qt Creator 2.6.1 for Windows (32bit Binary)

http://dist.qt.digia.com/developer/download_creator/qt-creator-win-commercial-2.6.1.exe

Qt 4.8.4 for Windows (Src and VS2010 64bit Binary)

http://dist.qt.digia.com/developer/download/qt-win-commercial-4.8.4-vs2010-64bit.exe

Qt Commercial Charts 1.1.0

http://dist.qt.digia.com/developer/download_charts/qt-commercial-charts-src-1.1.0.zip

Qt 5.0.0 Sources

http://dist.qt.digia.com/developer/download_50/qt-everywhere-commercial-src-5.0.0.zip

Qt 5.0.0 Offline SDK for Windows (32-bit Binary)

http://dist.qt.digia.com/developer/download_50/qt-windows-commercial-5.0.0-msvc2010_32-x86-offline.exe

Qt Visual Studio Addin 1.2.0 for Qt5 (Binary)

http://dist.qt.digia.com/developer/download_50/qt-vs-addin-1.2.0.exe

2、QT-project站点下载 http://qt-project.org/downloads

这个站点就直接并且清楚多了,分类非常清楚,例如以下图所看到的。

须要说明的是Qt libraries 4.8.4 for embedded Linux (236 MB) 下载链接和Qt
libraries 4.8.4 for Linux/X11 (225 MB)
 事实上下载的是一个东西,反正我看到的链接地址都是一样的,这也就是Linux下我们须要用的。另外从这个页面再下载开发所用的IDE QT Creator,这是一个bin文件,能够直接安装。

QT的编译与安装


1、复制文件到自己想要的文件夹,解压:

tar zxvf qt-everywhere-opensource-src-4.8.4.tar.gz

2、进入解压后文件文件夹。运行配置

root@emouse:~/study# cd qt-everywhere-opensource-src-4.8.4/

root@emouse:~/study/qt-everywhere-opensource-src-4.8.4# ./configure

此处也能够加上配置前缀./configure -prefix /opt/qt-4.8.4-x11

这种话再后面编译过程中的文件会拷贝到/opt/qt-4.8.4-x11 这个文件夹下(文件夹不存在会自己主动创建),优点是源代码便于管理,

关于这部分前缀配置能够我在config文件里找到这部分代码,能够參考。能够从这段代码中看出对应的配置以及没有配置的情况下默认安装文件夹。代码位于3594行。例如以下:

#-------------------------------------------------------------------------------
# post process QT_INSTALL_* variables
#------------------------------------------------------------------------------- #prefix
if [ -z "$QT_INSTALL_PREFIX" ]; then
if [ "$CFG_DEV" = "yes" ]; then
QT_INSTALL_PREFIX="$outpath" # In Development, we use sandboxed builds by default
elif [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
if [ "$PLATFORM_QPA" = "yes" ]; then
QT_INSTALL_PREFIX="/usr/local/Trolltech/QtLighthouse-${QT_VERSION}"
else
QT_INSTALL_PREFIX="/usr/local/Trolltech/QtEmbedded-${QT_VERSION}"
fi
if [ "$PLATFORM" != "$XPLATFORM" ]; then
QT_INSTALL_PREFIX="${QT_INSTALL_PREFIX}-${CFG_ARCH}"
fi
elif [ -d "$EPOCROOT" ] && [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
QT_INSTALL_PREFIX="$EPOCROOT/epoc32/"
QT_INSTALL_LIBS="$EPOCROOT/epoc32/release/armv5/lib/"
fi
else
QT_INSTALL_PREFIX="/usr/local/Trolltech/Qt-${QT_VERSION}" # the default install prefix is /usr/local/Trolltech/Qt-$QT_VERSION

配置过程中会有以下提示:

Which edition of Qt do you want to use ?

Type 'c' if you want to use the Commercial Edition.
Type 'o' if you want to use the Open Source Edition.

当然选择o啦。继续提示:

This is the  Open Source Edition.

You are licensed to use this software under the terms of
the Lesser GNU General Public License (LGPL) versions 2.1.
You are also licensed to use this software under the terms of
the GNU General Public License (GPL) versions 3. Type '3' to view the GNU General Public License version 3.
Type 'L' to view the Lesser GNU General Public License version 2.1.
Type 'yes' to accept this license offer.
Type 'no' to decline this license offer. Do you accept the terms of either license?

输入yes。回车就可以。接下来就会生成makefile文件,配置过程十来分钟左右。配置完毕后运行make。

接下来能够吃个饭或者睡一觉,编译时间大概3个小时左右,比較漫长,耐心等待吧。

经过漫长的等待之后,运行sudo make install来安装。会安装到/usr/local/Trolltech/Qt-4.8.4文件夹下。

安装时间比較短。大概须要几分钟左右,至此。安装完毕。

小測试一下,运行 /usr/local/Trolltech/Qt-4.8.4/bin/designer ,看见 qt 启动,例如以下图所看到的,就说明QT已经成功安装。

其它配置


qmake这个命令须要进行环境变量的配置才干找到的到,我看了下我的系统里已经包含了这个命令了,仅仅是路径不一样。

測试例如以下:

root@emouse:/# qmake -v
Qmake version: 1.07a (Qt 3.3.8b)
Qmake is free software from Trolltech ASA.
root@emouse:/# which qmake
/usr/bin/qmake

在看一下qmake的属性

从这个地方能够看出qmake这个命令别链接到了/etc/alternatives/qmake,还是不清楚是啥地方来的命令,继续看!

找到/etc/alternatives/qmake,在看一下属性就清楚了。能够看到这个地方又链接回去了。那么假设还使用qmake命令的话实际使用的是qmake-qt3,这样就会出现错误。也能够使用以下命令高速查看:

root@emouse:/# ls /usr/bin/qmake -ln
lrwxrwxrwx 1 0 0 23 12月 14 21:06 /usr/bin/qmake -> /etc/alternatives/qmake
root@emouse:/# ls /etc/alternatives/qmake -ln
lrwxrwxrwx 1 0 0 18 12月 14 21:06 /etc/alternatives/qmake -> /usr/bin/qmake-qt3

通过以上的分析能够知道,解决问题有两种方法,一个就是更改qmake的链接,使得qmake这个命令链接到安装文件夹下我们安装版本号的qmake,另一种方法就是改环境变量。

先说更改链接的方法,通过上面的介绍,这个事实上操作就比較直接和简单了,命令和实验结果例如以下:

root@emouse:/# rm /etc/alternatives/qmake
root@emouse:/# ln -s /usr/local/Trolltech/Qt-4.8.4/bin/qmake /etc/alternatives/qmake
root@emouse:/# qmake -v
QMake version 2.01a
Using Qt version 4.8.4 in /usr/local/Trolltech/Qt-4.8.4/lib

能够看到,qmake已经成功更改为4.8.4版本号。

另外一种办法就是更改环境变量,这个我没有尝试,有兴趣的自己验证。

vi /home/defonds/.bashrc 用来改动用户环境变量,在文件后面加入以下信息

export QTDIR=/usr/local/Trolltech/Qt-4.8.4
export PATH=$QTDIR/bin:$PATH
export MANPATH=$QTDIR/man:$MANPATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

再改动全部用户环境变量vi /etc/profile 相同在文件后加入上面的环境变量信息。这个方案应该相同可行。

Qt-creator的安装与配置


依据上面提供的网址下载qt creator在linux下的安装文件qt-creator-linux-x86-opensource-2.6.1.bin,以下的安装就比較简单了,首先更改文件属性,使它可运行。

chmod u+x qt-creator-linux-x86-opensource-2.6.1.bin

然后运行sudo ./qt-creator-linux-x86-opensource-2.6.1.bin

接下来就是非常熟悉的安装界面了。

安装完毕就可以。

接下来就能够使用这个IDE来进行开发了。这种界面是不是在linux下非常难得呢?

 

初步的安装就到这里。下次继续写关于嵌入式开发平台的构建。

linux 下安装编译配置 QT的更多相关文章

  1. FFmpeg在Linux下安装编译过程

    转载请把头部出处链接和尾部二维码一起转载,本文出自:http://blog.csdn.net/hejjunlin/article/details/52402759 今天介绍下FFmpeg在Linux下 ...

  2. Linux(4)- centos7安装python3、Linux下安装、配置virtualenv、确保开发环境的一致性、虚拟环境之virtualenvwrapper、vim

    一.centos7安装python3 1.下载python3的源码包 下载地址:https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz cd ...

  3. Linux下安装和配置JDK与Tomcat(升级版)

    在这个版本 Linux下安装和配置JDK与Tomcat(入门版) 的基础上优化升级 1.下载相关软件 apache-tomcat-6.0.37.tar.gz jdk-6u25-linux-i586-r ...

  4. [Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例二.

    为了更好的排版, 所以将IK分词器的安装重启了一篇博文,  大家可以接上solr的安装一同查看.[Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例一: http://ww ...

  5. Linux下安装与配置Nginx

    一.准备 Nginx版本:nginx-1.7.7.tar.gz   请自行到官网下载对应的版本. 二.步骤 ♦在Linux新建一个queenLove用户 [root@localhost /]# use ...

  6. 在linux下安装并配置mysql数据库

    在linux下安装并配置mysql数据库 工具/原料   MySql5.6 CentOS 方法/步骤   1 查找以前是否安装有mysql,使用下面命令: rpm -qa|grep -i mysql ...

  7. Linux下安装mantis配置指南【转】

    转自:http://blog.csdn.net/xabc3000/article/details/6858229 目录(?)[-] Linux下安装mantis配置指南 配置Linux下的Apache ...

  8. CentOS linux下安装和配置Apache+SVN(用浏览器http方式访问SVN目录)

    在CentOS linux下安装SVN,我们可以进行以下步骤: 第一步:安装CentOS Linux操作系统,并在CentOS安装进行的同时,自定义安装这一步,一定要勾选Subversion(在“开发 ...

  9. Snmp学习总结(六)——linux下安装和配置SNMP

    一.安装SNMP 1.1.下载Net-SNMP的源代码 选择一个SNMP版本,比如5.7.1,下载地址如下:http://sourceforge.net/projects/net-snmp/files ...

随机推荐

  1. Tool-MySQL-SQLyog:SQLyog

    ylbtech-Tool-MySQL-SQLyog:SQLyog SQLyog 是一个快速而简洁的图形化管理MYSQL数据库的工具,它能够在任何地点有效地管理你的数据库,由业界著名的Webyog公司出 ...

  2. Python - 集合与元素之集合定义和基本操作方法

    集合(set) 定义:由不同元素组成的集合,集合中是一组无序排列可hash的值(不可变的值)例如数字.字符串.元组,可以作为字典的key 定义集合: # 定义集合 s = {1, 2, 3, 3, 3 ...

  3. Octave 软件的安装

    每次安装软件都感觉是一种心痛的历程.下载安装,然后就跳出一堆的错误,之后就各种百度求救,然后就搞了大半天,有时候还搞不定. 最后,搞定的时候发现,原来这么简单,结果时间就这样浪费了,所以还是把这个过程 ...

  4. Leetcode106. Construct Binary Tree from Inorder and Postorder Traversal中序后续构造二叉树

    根据一棵树的中序遍历与后序遍历构造二叉树. 注意: 你可以假设树中没有重复的元素. 例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9,15, ...

  5. 跟我一起做一个vue的小项目(十)

    接下来我们对城市列表页面进行优化,除了对数据优化,也会进行节流处理 //src\pages\city\components\Alphabet.vue <template> <ul c ...

  6. Redis功能类

    <?phpnamespace org; /** * redis操作类 * 说明,任何为false的串,存在redis中都是空串. * 只有在key不存在时,才会返回false. * 这点可用于防 ...

  7. 万能的pdftk

    pdftk (the pdf toolkit) 是一个功能强大的命令行的 PDF 文件编辑软件,可以合并/分割 PDF 文档.对 PDF 文件加密解密.给 PDF 文档加水印.从 PDF 文档中解出附 ...

  8. 【python之路34】面向对象作业之学生选课系统

    一.需求: 1.可以注册管理员账号,管理员账号可以创建老师和课程 2.学生可以注册和登陆,学生可以从课程列表选课,可以进行上课登记查看 二.代码 1.文件目录 bin 存放可执行文件 config 存 ...

  9. java并发系列(八)-----java异步编程

    同步计算与异步计算 从多个任务的角度来看,任务是可以串行执行的,也可以是并发执行的.从单个任务的角度来看,任务的执行方式可以是同步的,也可以是异步的. Runnable.Callable.Future ...

  10. Java问题解读系列之基础相关---抽象类和接口

    今天来说一波自己对Java中抽象类和接口的理解,含参考内容: 一.抽象类 1.定义: public abstract class 类名{} Java语言中所有的对象都是用类来进行描述,但是并不是所有的 ...