转:http://blog.csdn.net/wavelee/article/details/7855727

在编译Qt4.8.6版本的库时,在配置时

  1. ./configure

出现了如下的错误:

  1. Basic XLib functionality test failed!
  2. You might need to modify the include and library search paths by editing
  3. QMAKE_INCDIR_X11 and QMAKE_LIBDIR_X11 in /home/wavelee/下载/qt-everywhere-opensource-src-4.8.2/mkspecs/linux-g++.

Goole 一下,发现这是由于缺少了某些库引起的,我按照他们提供的库的名称进行安装,结果yum提示找不到这些库。于是,我觉得可能是Centos6.3的库的名字可能有些变化,于是应如下的命令进行安装:

  1. yum install  *libX11*  *libXext* *libXts*

结果成功。从安装过程可以知道,这几个库的真实名字如下:

  1. libX11-devel libXext-devel libXtst-devel

并且,这几个库还依赖与一下几个库:

  1. libXau-devel
  2. libXdmcp-devel
  3. libXi-devel
  4. libxcb-devel
  5. xorg-x11-proto-devel

不过,这些不需要操心,yum 会帮我们装好的。

=========================================================================================

1.下载qt-creator-opensource-x86_64-2.6.1.bin 用谷歌搜索可以找到sourceforge 下载地址

http://sourceforge.net/projects/qtcreator.mirror/files/Qt%20Creator%202.6.1/

2.下载qt 4.8.6 官网下即可,(老感觉官网导致我后面的问题,可以试试github上或者sourceforge上面的,我已经安装过2遍了,不想再尝试)

3.qt-creator 直接给x权限,执行即可  默认安装在opt下

4.qt library 解压后  进入目录

$ QTDIR=$(pwd)
$ PATH=$QTDIR/bin:$PATH
$ MANPATH=$QTDIR/man:$MANPATH
$ LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
这些环境变量是过会安装用的,安装完后,后边还会有变量设置
 
5. ./configure
    ./gmake   此处用gmake  (GUN make)是因为make可能不同系统有所差距 (2-3小时)
   make install  (root权限)
6. 安装完后,安装文件目录不能删除!!! /usr/local/Trolltech/Qt-4.8.6/bin 下启动   ./designer
我一开始 都是乱码 ,然后打开./qtconfig (此目录下)
在FONTS里面,选择自提,songti 或者fangsongti   再打开就可以了
但还是这么难看,看别人安装好的,fonts里面有好多字体,和系统本身的自提一样(可以右击桌面属性看到),我里面一直只有这点,因此重装一遍.....还是这样..
用非root用户打开 界面正常漂亮||||或者用qt-creator直接嵌入调用打开,而不是直接打开
 
7. 至此,安装完成
打开/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    //这是调用第三方库 必须配置的变量,默认只读取/usr/lib  /lib
保存后,source /etc/profile
    ldconfig
8.测试安装成功
qmake -v  
出结果ok
9.配置下qt-creator
Qt Creator的菜单[Tool]->[Option...],点击后弹出Option对话框:在编译和运行中,点击右边add ,添加/usr/local/Trolltech/Qt-4.8.6/bin/qmake
再在kits选项下,
qt-version下选择,上一步,点击apply 应用,这一步,选项下才会有qt可选
 
=========================================================================
至此,全部完事,通过qtcreator 项目编辑中,双击打开UI文件,没有乱码
 
1.

./configure -static -release -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg -nomake demos -nomake examples -qt-sql-sqlite -prefix /usr/local/Trolltech/Qt-4.8.6_static

(我的-qt-gif错误,就没写这选项) 必须在源码文件中静态编译!!,即使命名为Qt-4.8.6_static,最后依旧只有Qt-4.8.6,就这么着吧

参数-static 指的是要采用静态编译Qt的方法

参数-release指的是只编译release版本的库

参数-qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg 是更好确定Qt编译出的程序能在目前不知的系统下运行。

参数-nomake demos -nomake examples 指的是不编译demos和examples

参数-qt-sql-sqlite 如果没有这个参数,configure的时候,可能会提示sqlite 有问题而中止。

参数 -prefix /usr/local/Trolltech/Qt-4.8.6_static 指明静态编译的Qt安装的目录,命名Qt-4.5.1_static是为了区别动态编译安装的Qt,后来发现没用

参数 -continue  当发生错误时,尽可能继续编译

参数 -silent 进行make时只会显示警告和错误等,不会把编译指令也输出到屏幕上

注:如果出现错误:Basic XLib functionality test failed!
                    You might need to modify the include and library search paths by editing
                    QMAKE_INCDIR_X11 and QMAKE_LIBDIR_X11

解决办法:yum install libX*

(如果是Ubuntu 也可运行sudo apt-get install libx11-dev libxext-dev libxtst-dev)

另一个编译版本:麒麟机子:

./configure -release -opensource -static -fast -no-largefile -no-accessibility -no-qt3support -no-multimedia -no-audio-backend -no-phonon-backend -no-phonon -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-declarative-debug -qt-zlib -qt-libtiff -qt-libpng -no-libmng -qt-libjpeg -no-openssl -nomake libs -nomake tools -nomake examples -nomake demos -nomake docs -nomake translations -no-dbus

2.gmake 下面参数我没加

-k  当发生错误时,尽可能继续编译

-j N  同时进行N项编译,建议N的值为你的CPU核数X1.5。当然,我选的值略微狠了点,我的电脑是奔腾双核T4300,make指令为: make –k –j 4    ,然后我就看到系统监视器里CPU直接飙到100%了

3.gmake install 嫌麻烦 可以不要这步的,不过以后的编译都得借助源码中qmake (linux中 make install就是简单复制,没啥)
 
 
 

centos安装Qt的更多相关文章

  1. centos安装qt开发环境

  2. centos 下 Qt Creator 的安装使用

    centos 下 Qt Creator 的安装使用 Qt 以其开源,免费,完全面向对象(很容易扩展),允许真正的组件编程以及可移植跨平台等诸多优势得到越来越多的开发人员的青睐.Qt Creator 是 ...

  3. centos 下Qt安装 mysql驱动(亲测可行)

    (前半部分没有试过,因为我的有mysql驱动,实在抱歉) 1.预防万一,先安装一下mysql-devel(一定要装!). 不安装的话后面编译会出现找不到-lmysqlclient的问题. 2. 开始编 ...

  4. CentOS源码安装QT

    在VirtualBox上的CentOS下安装qt-everywhere-opensource-src-4.8.4 ,执行 ./confiure时失败,失败信息为:Basic XLib function ...

  5. CentOS 6.5 下安装 QT 4

    1. 获取下载地址 从我到网盘下载:  qt-creator-opensource-linux-x86_64-3.5.1.run            qt-everywhere-opensource ...

  6. Linux编译安装Qt 5.4.1(-qt-xcb是必须要指定的,卸载自带的gcc等)

    转载请注明文章:Linux编译安装Qt 5.4.1 出处:多客博图 很久不写文章了,过程很简单,但是操作很多,简单说吧. 前言: 操作系统CentOS 6.6,64位的. 1.安装gcc 4.8.4, ...

  7. CentOS遇到Qt编译问题(error: cannot find -lGL)

    1.安装Qt,进入CentOS系统的终端,依次执行以下命令 chmod +x qt-opensource-Linux-x64-5.5.1.run ./qt-opensource-linux-x64-5 ...

  8. centos安装图形界面通常有两种方式

    centos安装图形界面通常有两种方式   1.通过系统安装,在配置选择软件界面,选择GNOME桌面模式.

  9. Ubuntu 下安装QT

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

随机推荐

  1. webservcie学习之webservice是什么

    之前写代码,只是用到的时候才去看相关技术,用过后也没有再回头特别 去看,现在突然发现对一些技术的了解不够深刻,故现在准备再从头对用到的技术深入的学习下.就从webservice开始.首先对我不解的地方 ...

  2. 聊聊ERP的VIP卡充值的那些事

    我们相信许多客户朋友,不管使用什么品牌的ERP系统,可能都有经历过各种各样的操作痛点,以及在某个阶段之前的功能无法满足现有的操作需求.今天我们就聊聊VIP卡充值操作遇到的一些问题以及相关解决方案,最大 ...

  3. C# 9 新特性 —— 补充篇

    C# 9 新特性 -- 补充篇 Intro 前面我们分别介绍了一些 C# 9 中的新特性,还有一些我觉得需要了解一下的新特性,写一篇作为补充. Top-Level Statements 在以往的代码里 ...

  4. 添加/删除/读写c盘文件——c#

    一.前言: 有时候我们为自己的程序添加配置文件,如tet.ini.xml等文件,又或者保存软件运行时的日志 当我们把软件打包后,默认安装在c盘,而配置文件也会跟随生成在安装目录下 此时你会发现,配置文 ...

  5. springboot集成轻量级权限认证框架sa-token

    sa-token是什么? sa-token是一个JavaWeb轻量级权限认证框架,主要解决项目中登录认证.权限认证.Session会话等一系列由此衍生的权限相关业务.相比于其他安全性框架较容易上手. ...

  6. 【JavaWeb】i18n 国际化

    i18n 国际化 什么是 i18n 国际化(Internationalization)指的是同一个网站可以支持多种不同的语言,以方便不同国家,不同语种的用户访问. 希望相同的一个网站,不同人访问的时候 ...

  7. spring boot gateway 过滤器的执行顺序

    前言 学习官方文档,发现对于过滤器有分为三类 默认过滤器 自定义过滤 全局过滤器 于是就有一个疑问,关于这些过滤器的访问顺序是怎样的,今天就以一个demo来进行测试 准备阶段 过滤器工厂类 以此为模板 ...

  8. 【Oracle】修改oracle中SGA区的大小

    1.备份数据库: 2.关机,拔下电源和各种连接线,抽出机箱,打开机箱上盖,增加内存: 3.完成后按原样将各个部件及连接线恢复好,电开机,系统正常运行: 4.进入系统查看,发现内存已经顺利安装: 5.修 ...

  9. VL02N发货过账BAPI

    使用BAPI函数: BAPI_OUTB_DELIVERY_CONFIRM_DEC 进行delivery的发货过账,可能会有如此的需求,就是修改实际的发货日期.规划的GI.交货日期.装载日期.传输计划日 ...

  10. 一种获取context中keys和values的高效方法 | golang

    我们知道,在 golang 中的 context 是一个非常重要的包,保存了代码活动的上下文.我们经常使用 WithValue() 这个方法,来往 context 中 传递一些 key value 数 ...