一、下载Qt源码包到本机,然后解压缩
#tar zxvf qt-x11-opensource-src-4.3.2.tar.gz -C /usr/local //将qt-x11-opensource-src-4.2.3.tar.gz源码包解压缩到/usr/local目录(推荐解压缩至 /usr/local目录)

二、进入用户家目录的.bash_profile文件设置Qt环境变量,在这里我们以root用户以例。

#vi /root/.bash_profile //打开root用户.bash_profile文件

在root用户.bash_profile文件中设置环境变量,在此文件里面添加如下内容:

QTDIR=/usr/local/qt-x11-opensource-src-4.3.2
PATH=$QTDIR/bin:$PATH
MANPATH=$QTDIR/doc/man:$MANPATH
LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export QTDIR PATH MANPATHLD_LIBRARY_PATH

添加完上面信息后按ESC键,“Shife+:”组合键回到vi编辑器命令行状态,输入wq!(强制保存退出)

三、添加完环境变量后,使环境变量立即生效:#source /root/.bash_profile

四、进入Qt解压缩的目录
#cd $QTDIR或#cd /usr/local/qt-x11-opensource-src-4.3.2都可以,因为在/root/.bash_profile文件已经定义了环境变量QTDIR= /usr/local/qt-x11-opensource-src-4.3.2和export QTDIR 。

五、使用configure工具来构建Qt库和它提供的工具:./configure(./configure --help 配置选择的列表。例:-thread选项来创建这个库的一个多纯种版本。)

六、最后一步就要进入漫长的Qt安装编译时间了,有事的就出去办事吧,安装编译时间大约需要两个小时。编译命令:make

Qt安装过程就是这样了,祝您安装Qt成功!

首先我们进入Linux的图形界面,打开一个控制终端(在桌面空间处单击鼠标右键,在弹出的单菜中选择“新建控制终端”。),在控制终端里面新建一个.cpp文件,并编写程序,如下:

#vi HelloWorld.cpp //建立一个HelloWorld.cpp文件
#include
#include
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
QLabel *label=new QLabel("Hello World!!!",0);
app.setMainWidget(label);
label->show();
return app.exec();
}

写完上面的代码后保存退出(wq)vi编辑器。
#qmake -project //把.cpp文件编译成.pro文件
#qmake HelloWorld.pro //通过.pro文件自动创建Makefile文件
#make //编译,生成HelloWorld执行文件
#./HelloWorld //运行HelloWorld文件

程序正常运行对话框显示“HelloWorld!!!”,证明Qt安装成功!

如果编译时候出现错误:QMAKESPEC has not been set, so configuration cannot be deduced.

Error processing project file: XXXXX.pro

是QMAKESPEC变量没有设置好,在/root/.bash_profile里加入一行:

export QMAKESPEC=/usr/local/qt-x11-opensource-src-4.3.2/mkspecs/linux-g++(即是linux-g++的路径)。

http://blog.chinaunix.net/uid-25749806-id-300040.html

linux下配置QT(很全的步骤,从下载开始,配置QMAKESPEC)的更多相关文章

  1. Linux下编译Qt源码,一定要下载tar.gz版本,否则会报权限不足

    首先下载qt-everywhere-opensource-src-4.8.1源码,下载地址: ftp://ftp.qt-project.org/qt/source/ 在Linux下编译一定要下载qt- ...

  2. linux安装软件的几种方法----linux下编译安装软件的一般步骤

    linux安装软件的几种方法: 一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd so ...

  3. linux下对qt编写的程序进行部署

    当我们完成程序设计之后,需要将可执行程序交付客户,而运行环境里面可能是没有相关支持库的,这个时候就涉及到部署的相关问题.对于我们在Linux下基于QT编写的图像处理程序,我们采用linuxdeploy ...

  4. linux下mysql-5.5.15安装详细步骤

    linux下mysql-5.5.15安装详细步骤 注:该文档中用到的目录路径以及一些实际的值都是作为例子来用,具体的目录路径以各自安装时的环境为准 mysql运行时需要一个启动目录.一个安装目录和一个 ...

  5. Linux下的变化的主机名步骤

    Linux下变化的主机名gpdb 步骤1.执行vi /etc/sysconfig/network命令 NETWORKING=yesHOSTNAME=gpdb 第二步.执行hostname gpdb令 ...

  6. linux下的qt串口通信

    1.linux下的qt串口通信跟windows唯一的差别就是端口号的名字,windows下面是COM,而linux是ttyUSB0的路径 2.一般情况下linux插上USB转串口线就可以在/dev/目 ...

  7. [置顶] Linux下发布QT程序

    Linux下发布QT程序 概述 无论在windows下还是在linux下,可执行程序的运行都依赖于相关的运行库,我们需要将依赖的库找到放到特定的位置,让可执行文件能够找到.在不知道可执行文件依赖哪些库 ...

  8. 【大数据】Linux下Storm(0.9版本以上)的环境配置和小Demo

    一.引言: 在storm发布到0.9.x以后,配置storm将会变得简单很多,也就是只需要配置zookeeper和storm即可,而不再需要配置zeromq和jzmq,由于网上面的storm配置绝大部 ...

  9. linux下安装QT过程

    说QT是linux下主要的图形开发工具一点都不过分,虽然诺基亚公司放弃Meego.遣散了Qt开发团队,但是它的各种商业.企业版本还是的到了很好的保护,linux下的开发工具集里还是经常看到它的身影,毕 ...

  10. Linux下移植QT(2)---移植QT

    准备:ubantu12.04   内核 3.0.8(最好用同样的内核,3.2.0时没成功) 交叉编译工具:arm-cortex_a8-linux-gnueabi-gcc-4.4.6 QT版本5.4.2 ...

随机推荐

  1. c++学习笔记之变量

    变量的命名规则:标示符要能体现含义,变量的名字一般用小写,用户自己定义的类一般第一个字母大写,如果标示符有多个单词组成,则需要加下划线.' 变量声明和定义的关系:程序有多个文件组成,有时候需要再多个文 ...

  2. Unity3d之Animation(动画系统)

    1,动画系统配置,2,代码控制动画 原文地址: http://blog.csdn.net/dingkun520wy/article/details/51247487 1,动画系统配置 创建游戏对象并添 ...

  3. 简单修改 MySQL 的 root 账号密码

    首先这是一篇非常非常初级的教程. 平时为了方便,经常是直接在网上下载 PHP + MySQL 的集成环境,但有一些 MySQL 的 root 账号是没有密码的(例如大名鼎鼎的 XAMPP 就是这样), ...

  4. jQuery插件开发总结

    jQuery插件的开发包括两种: 一种是类级别的插件开发$.extend,即给jQuery添加新的全局函数,相当于给jQuery类本身添加方法,比如:$.ajax, $.getJSON等.jQuery ...

  5. asp.net页面的请求处理响应的过程描述

    概述 本篇博客从IIS到asp.net页面后台运行完,整个过程做一个简单的描述,如果有不对的地方,望指出. IIS处理请求的过程 我们通过浏览器(Socket客户端)访问一个IIS服务器上的网页时,该 ...

  6. 为什么匿名内部类参数必须为final类型(转载)

    为什么匿名内部类参数必须为final类型转自于:http://feiyeguohai.iteye.com/blog/1500108 1)  从程序设计语言的理论上:局部内部类(即:定义在方法中的内部类 ...

  7. 【BZOJ】【3856】Monster

    又是一道水题…… 重点是分情况讨论: 首先我们很容易想到,如果a*k-b*(k+1)>0的话那么一定能磨死Monster. 但即使不满足这个条件,还有可能打死boss: 1.h-a<1也就 ...

  8. js的全局函数

    JS的全局函数,全局函数和window对象的函数不一样. 全局函数不属于任何一个内置对象. JS包含以下7个全局函数,用于一些常用的功能: escape(),unescape(); //编码,解码. ...

  9. GS连接事件

    GS网络连接事件 //网络事件 //这个事件是在libevent里面的收到的事件就是在那个listen里面,就是客户端打开,服务器收到通知 link_stat stat = (link_stat)rP ...

  10. JS中函数的基础知识

    函数 一.  函数定义 函数又叫方法,在程序里面函数是用来执行某些特定功能的代码.为了减少重复使用代码,可以把特定功能的代码做成函数,需要使用时拿出来调用.alert();就是一个很常见的.简单的函数 ...