转载请注明出处:

http://www.cnblogs.com/darkknightzh/p/5652429.html

参考网址:

http://doc.qt.io/qt-4.8/install-x11.html

http://download.qt.io/archive/qt/

http://doc.qt.io/qt-4.8/configure-options.html

http://zhidao.baidu.com/link?url=pkbqSMPjw_dfVm3JJF9mmue8UIR-mp6tVw_-4fGTJZN7CuLLd__IlPwIgPYgj_E4CdSPi_rcn4aJKdU5UCB0xa

http://blog.csdn.net/qust_waiwai/article/details/43868735

qt下载地址:

http://download.qt.io/archive/qt/

如下:

在ubuntu14和ubuntu16上都测试过,官方的方法可行(这不废话吗。。。)

1. 安装license file(只限商业版本)

$HOME/.qt-license

说明:用的是开源版本,所以这句话没运行过。。。

2. 解压压缩包。

下载之后,如果压缩包放在tmp中,

cd /tmp
gunzip qt-everywhere-opensource-src-%VERSION%.tar.gz # uncompress the archive
tar xvf qt-everywhere-opensource-src-%VERSION%.tar # unpack it

说明:直接打开ubuntu的“文件”然后到该压缩包位置,然后”提取到此处“,毕竟已经习惯了windows了。

3.生成配置文件

cd到解压后的文件夹中,然后使用./configure配置库。默认情况下,qt会被配置到 /usr/local/Trolltech/Qt-%VERSION%的文件夹中,可以通过使用 -prefix来修改(没用过。。。)。

cd qt-everywhere-opensource-src-%VERSION%
./configure

可以使用./configure –help来获得所有可用的选项。也可以打开下面的网址查看。

http://doc.qt.io/qt-4.8/configure-options.html

4. 使用make来创建库并编译所有的demo,example,tools和tutorials

make
sudo make install

如果以后需要在原来的文件夹重新配置并编译qt,则先使用make confclean清理之前的文件。

说明:现在才知道make和make install有什么区别

http://zhidao.baidu.com/link?url=pkbqSMPjw_dfVm3JJF9mmue8UIR-mp6tVw_-4fGTJZN7CuLLd__IlPwIgPYgj_E4CdSPi_rcn4aJKdU5UCB0xa

当你使用make命令是,格式是这样的 make [option: target_name]

也就是说,你在make 后面加上 target的名字,make就帮你执行这个target后面的编译规则。当然,这个 target名字是可选的,当不加的时候,make找到makefile里面的定义的第一个target, 执行后面的编译规则。(而不是安执行所有makefile里面的所有target的规则)

一般来说,一个makefile里面都会定义几个常用target,比如 config, install, clean, config就是根据你的环境配置一下各种变量,install就是现编译,在把编译好的内容放到该方的地方,clean就是删除掉编译出来的结果,把工程打回编译前只有源码的原始状态。

5. 设置环境变量

如果需要使用Qt的话,需要设置环境变量:

PATH               - to locate qmake, moc and other Qt tools

如果使用的shell是bash,ksh,zsh或sh,在终端中输入:

PATH=/usr/local/Trolltech/Qt-%VERSION%/bin:$PATH
export PATH

如果使用的shell是csh或tcsh,使用(没用过):

setenv PATH /usr/local/Trolltech/Qt-%VERSION%/bin:$PATH

如果使用其他shell,相应的修改环境变量。

6. 如果编译器不支持rpath的话,需要LD_LIBRARY_PATH环境变量包含/usr/local/Trolltech/Qt-%VERSION%/lib。在使用GCC的linux上,这一步可以省略。

7. (官网没有这一步)http://blog.csdn.net/qust_waiwai/article/details/43868735

中说到,创建连接:

sudo ln -s /usr/local/Trolltech/Qt-%VERSION%/bin/qmake /usr/lib/i386-linux-gnu/qt4/bin/qmake

(原)ubuntu上安装qt的更多相关文章

  1. 在Ubuntu上安装Qt5.2.0

    分类: QT2013-12-16 14:44 3171人阅读 评论(0) 收藏 举报 QT官方站点的文档有点老.今天,我尝试着在我的Ubuntu 13.10上安装Qt 5.2.0.下面是我的步骤: 1 ...

  2. 在Ubuntu上安装Odoo时遇到的问题

    这两天开始看<Odoo快速入门与实践  Python开发ERP指南>(刘金亮 2019年5月第1版 机械工业出版社).试着在Ubuntu上安装Odoo,遇到很多问题,通过在网上查找,都已解 ...

  3. Ubuntu 下安装QT

    Ubuntu 下安装QT 本文使用的环境 QT Library: qt-everywhere-opensource-src-4.7.4.tar.gz QT Creator: qt-creator-li ...

  4. [异常解决] ubuntu上安装JLink驱动遇到的坑及给后来者的建议

    一.前言 最近将整个电脑格式化,改成了linux操作系统 希望这样能让自己在一个新的世界探索技术.提升自己吧- win上的工具用多了,就不想变化了- 继上一篇<ubuntu上安装虚拟机遇到的问题 ...

  5. Ubuntu上安装Robomongo及添加到启动器

    到目前为止,Robomongo仍是MongoDB最好的客户端管理工具,如需在Ubuntu上安装Robomongo,可直接从官网下载.tar.gz压缩包进行解压,然后直接运行bin目录下的robomon ...

  6. 在 Ubuntu 上安装 Android Studio

    在 Ubuntu 上安装 Android Studio http://www.linuxidc.com/Linux/2013-05/84812.htm 打开terminal,输入以下命令 sudo a ...

  7. Ubuntu上安装Karma失败对策

    在Ubuntu上安装Karma遇到超时 timeout 错误.Google了一下,国外的码农给了一个快捷的解决方案,实测可行,贴在这里: sudo apt-get install npm nodejs ...

  8. 在Ubuntu上安装LAMP服务器

    1.安装Ubuntu上安装LAMP apt-get install lamp-server^ 2.安装过程中设置MySql密码 3.测试 创建index.php var/www/html/index. ...

  9. [译]How to Setup Sync Gateway on Ubuntu如何在ubuntu上安装sync-gateway

    参考文章https://hidekiitakura.com/2015/03/21/how-to-setup-sync-gateway-on-ubuntudigitalocean/ 在此对作者表示感谢 ...

随机推荐

  1. OpenSuse13.2安装CUDA Toolkit 7.5

    此次安装过程有点曲折,不过最后还是能成功安装,由于没细细看官方的安装文档,导致花了很多时间安装,希望此文能让想装CUDA的同学少走点弯路 1.NVIDIA Driver是否要装 刚开始要装CUDA时, ...

  2. FCKeditor插件开发实例:uploadify多文件上传插件

    FCKeditor是一个专门使用在网页上属于开放源代码的所见即所得文字编辑器.它志于轻量化,不需要太复杂的安装步骤即可使用.它可和PHP.JavaScript.ASP.ASP.NET.ColdFusi ...

  3. py2exe生成exe后,运行exe时提示No module named * 的解决办法

    一个pymssql 的程序在解释器上运行正常,但是用py2exe打包后,提示 ImportError: No module named _mssql 百度了半天无果,然后bing,结果bing还是比百 ...

  4. bzoj 3238 Ahoi2013 差异

    3238: [Ahoi2013]差异 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 2357  Solved: 1067[Submit][Status ...

  5. 读mongoose api 记录

    mongoose 需要在Schemas基础上进行使用 var mongoose = require('mongoose'); var Schema = mongoose.Schema; var blo ...

  6. IOS 音频播放

    iOS音频播放 (一):概述 前言 从事音乐相关的app开发也已经有一段时日了,在这过程中app的播放器几经修改我也因此对于iOS下的音频播放实现有了一定的研究.写这个系列的博客目的一方面希望能够抛砖 ...

  7. 精通find命令

    一.前言 find命令是linux使用过程中经常用到的命令,但可能大家只会如下使用find find ./ 或者这样使用 find ./ | grep str 上述命令等同于 find ./ -nam ...

  8. C++里消除Wunused

    编译程序时,有一大堆警告总是不爽的.别人的代码也就忍了,不好去改.自己的可没法忍.看看C++里怎么消除Wunused警告. 先来看下面的程序: #include <iostream> in ...

  9. 新手使用ThinkPHP3.2.3的命名空间问题

    ThinkPHP3.2.3的命名空间问题 命名空间的出现是为了避免命名冲突. 我们在TP3.2.3的Collection和Model的创建过程中经常会遇到这样的两行代码: 这是在控制器中的写法.其中n ...

  10. Android软件开发之常用系统控件界面整理

    1.文本框TextView TextView的作用是用来显示一个文本框,下面我用两种方式为大家呈现TextView, 第一种是通过xml布局文件呈现 ,第二种是通过代码来呈现,由此可见Android ...