转: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. ShareSdk自己写的Demo

    安卓原生Demo 根据mob发布的ShareSdk编写的demo,只添加了自己使用到的一些平台. 签名和第三方平台的账号都是用的shareSdk官方Demo的. 因为只是为了展示shareSdk用法, ...

  2. “You may need an appropriate loader to handle this file type”

    这里不能为空!!!!!!!!!!!!!!!!!!!!

  3. Redis缓存篇(三)缓存污染

    上一讲介绍了缓存满了,通过内存淘汰机制来淘汰掉数据.如果有的数据一直滞留在缓存中,但又没有应用使用,时间长了,就可能会占据大部分的缓存空间. 今天我们来学习一下缓存污染,以及如何解决缓存污染. 缓存污 ...

  4. EasyPoi中@Excel注解中numFormat的使用

    需求说明:使用EasyPoi时导出文件中折扣字段是小数,被测试同学提了一个bug,需要转成百分数导出. 个人觉得应该转百分号只要在@Excel注解里面加个属性即可,但是在网上的easypoi教程中没有 ...

  5. Kubernetes官方java客户端之八:fluent style

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  6. Laya 踩坑日记-BitmapFont 不显示空格

    项目中有用到艺术字,美术通过 bmfont64 将字体导给我了,结果发现在应用上 空格不显示 如图: 今天去深究了一下这个问题,发现是底层没封装好,然后自己改了一下下面是改过的 BitmapFont ...

  7. 使用Jenkins+Pipline 持构建自动化部署之安卓源码打包、测试、邮件通知

    一.引言 Jenkins 2.x的精髓是Pipeline as Code,那为什么要用Pipeline呢?jenkins1.0也能实现自动化构建,但Pipeline能够将以前project中的配置信息 ...

  8. Jenkins+windows+.netcore+git+iis自动化部署入门

    什么是自动化部署,就不介绍了,喜欢直接进入主题. 一. 所需环境: 1.系统为windows10 . 2.asp.net core3.1 runtime必须安装,因为我的代码是asp.net core ...

  9. Java 多线程读取文件并统计词频 实例 出神入化的《ThreadPoolExecutor》

    重在展示多线程ThreadPoolExecutor的使用,和线程同步器CountDownLatch,以及相关CAS的原子操作和线程安全的Map/队列. ThreadPool主线程 1 import j ...

  10. 怎么判断是旧版本的ext3还是新版本?

    怎么判断是旧版本的ext3还是新版本的?   ---高性能419