编译安装Qt4(二)

前言

?? 上一篇文章说到我为了解决QAction图标不能显示的问题选择安装了Qt5,但是安装完成后,我重新编译源代码,发现好多报错,很多Qt4中的头文件,Qt5编译说找不到.上网查了后,说Qt5和Qt4差别还是很大的,兼容性不是很好.尽管有一些解决Qt4向Qt5移植的文章,但是都很麻烦,而且不一定能成功移植,移植后也可能会出现其他问题.于是我决定再安装Qt4,Qt5也不卸载,这两是可以共存的.

Qt4.8.6

?? 因为不想太麻烦,我网上找到了下面的方法,直接用apt-get install 安装,简单省事.

附上原帖链接:http://baike.baidu.com/link?url=q4fvHa8bwl-lTsww3azEJKDQ-a8UDMq75WXkQKrggw6LccZC3sULPNdEOK_KjdhZDh65YX319kfCKupaVEHxta

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源码

安装很顺利,一步到位,但是试着编译了一下我那个源代码,图标还是不能显示. 唉,看来有些麻烦还真不能省,捷径不是那么好走的. 我还是老老实实编译安装吧.这回选择编译安装Qt4.8.5(害怕万一是Qt4.8.6的问题,不想再折腾了,其实应该不是).

编译安装Qt4.8.5

1. 在官网下载Qt4.8.5的源码

Qt各版本源码

选择下载: qt-everywhere-opensource-src-4.8.5.tar.gz

2. 解压:

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

3. 进入源码目录

 cd qt-everywhere-opensource-src-4.8.5/

?看到有这些文件:

4. 安装Qt的依赖包

sudo apt-get install  libX11-dev
sudo apt-get install  libXext-dev
sudo apt-get install  libXtst-dev

5. 编译安装

sudo apt-get install libfontconfig*

注:这是安装fontconfig部分的库文件,为了支持中文显示

sudo ./configure -fontconfig -prefix /opt/qt-4.8.5-x11

注:这里一定要加 -fontconfig 参数,网上很多没加,因为这个fontconfig库是用来支持中文,如果不加这个参数,Qt界面将不能显示中文,遇到中文的地方会是空白.我就是第一遍没有加,最后只能重新编译安装了一次.

sudo   make

注:编译时间很长,大概1到2小时,耐心等待,可以干别的事了

sudo  make  install

如果没遇到什么奇葩问题,这就顺利安装完成了.

6. 配置环境变量

cd   /etc/
sudo  vim  profile

? 将下面代码添加到文件末尾,保存退出:

export QTDIR=/opt/qt-4.8.5-x11
export PATH=/opt/qt-4.8.5-x11/bin:$PATH
(PATH=$QTDIR/bin:$PATH)
export MANPATH=$QTDIR/man:$MANPATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

?终端执行命令:

source    profile

7. 关于qmake

?? 顺利的话,qmake直接就可以使用了,如果不能使用,那就要手动创建一个软链接,就像上篇安装Qt5那样.

cd   /usr/bin
sudo  ln  -s  /opt/qt-4.8.5-x11/bin/qmake  qmake

注:软链接名字要与Qt5区分,我的Qt4用qmake,Qt5用qmake-qt5

?查看Qt版本:

qmake   -v

? 查看qmake路径:

which   qmake

?? 好了,Qt4.8.5已安装完毕. 再次试了下,我的问题解决了,QAction图标正常显示.

时间: 2024-10-11 12:41:27

编译安装Qt4(二)的相关文章

LAMP编译安装(二)——安装Mariadb-5.5.45

背景介绍 从上一篇文章了解到,当服务器架构为下图中的类型时,PHP服务器会启动php-fpm服务侦听在一个特定的套接字上来等待httpd服务器的请求,如果请求中包含对后端Mysql服务器的访问,此时分为几种情况: 1.PHP服务器是独立服务器,或PHP服务器和httpd服务器在同一台主机,并以httpd服务器的一个模块方式存在,且都为编译安装,则编译时需要通过mysqlnd参数联系后端的Mysql服务器 2.PHP服务器为独立服务器,且不是编译安装,可能需要安装php-mysql客户端来连接My

编译安装LAMP(二)——编译安装MySQL-5.5.28

1.准备数据存放的文件系统新建一个逻辑卷,并将其挂载至特定目录即可.这里不再给出过程. 这里假设其逻辑卷的挂载目录为/mydata,而后需要创建/mydata/data目录做为mysql数据的存放目录. 2.新建用户以安全方式运行进程: # groupadd -r mysql # useradd -g mysql -r -s /sbin/nologin mysql # chown -R mysql:mysql /mydata/data 3.安装并初始化mysql-5.5.28首先下载平台对应的m

centos 6.5源码编译安装subversion 1.8.10

一.简介 CentOS 6.5的yum源可以安装的SVN客户端版本太低了,1.6.11,所以需要升级到1.8.10,而官网有没有找到1.8.10的安装包,只能选择源码编译安装. 二.安装步骤 参考官网:http://svn.apache.org/repos/asf/subversion/trunk/INSTALL 源码下载:http://archive.apache.org/dist/subversion/ 源码编译subversion依赖许多别的工具,比如:apr.apr-util.libto

centos 6.9 编译安装 Nginx1.12.1

centos 6.9 使用yum 安装 Nginx1.12.1 Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日. 其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名.2011年6月1日,nginx 1.0.4发布. Ng

程序包管理之源代码编译安装及rpm源码包安装

一.程序源码编译安装步骤 二.程序路径管理 三.简单源码编译安装示例 四.rpm源码包安装 一.程序源码编译安装步骤 --------------------------------------- 1.cd SOURCE_CODE    #cd到程序源码文件夹 --------------------------------------- 2../configure    #检查编译环境,对程序定制编译配置,编译前读一读README,INSTALL #常用配置参数:--prefix=安装路径,-

LAM P编译安装

一.实验目标 在CentOS 7平台上实现编译安装LAMP 二.实验规划 Apache 172.18.12.7 httpd-2.4.9.tar.bz2 mairadb 172.18.12.8 mariadb-5.5.43 php 172.18.12.8  php-5.4.26.tar.bz2 提供通用开发环境  # yum groupinstall "Development Tools" "Server Platform Development 三.编译LAMP  1.Apa

Linux运维学习历程-第十三天-yum前端工具与源码编译安装

yum 前端工具 1.yum 2.源码编译安装http 二.作业: 1.输入若干个数值存入数组中,采用冒泡算法进行升序或降序排序 2.删除kernel包后,无法启动,并恢复之 3.源码安装apache

编译安装PHP5.4.41

一.部署LAMP环境,安装顺序 二.编译.安装php 三.安装xcache,为php(opcode)加速 四.其他 一.部署LAMP环境,安装顺序 编译安装部署LAMP环境,安装顺序 1.编译安装apache,http://64314491.blog.51cto.com/2784219/1652948 2.编译安装mysql,http://64314491.blog.51cto.com/2784219/1652999 3.编译安装php 二.编译.安装php 1.下载php并解压 [[email

+++++++子域授权与编译安装(二)

子域授权.转发区域<子域解析父域>.DNS安全配置<acl定义,内置变量,acl安全指令>.dns使用view实现智能dns.CDN,全局负载均衡.编译安装bind.dns压力测试 一.恢复快照 二.缓存服务器 三.(正.反)区域解析库配置 四.主从同步 五.子域授权 六.转发区域 七.安全配置 八.view实现智能DNS 九.编译安装BIND 十.压力测试 拓扑模型 一.配置ntp服务器<192.168.58.131> 1.安装ntp # yum -y -q inst