QT4.8.6静态编译

  • 下载源安装程序,http://download.qt.io/archive/qt/4.8/4.8.6/qt-everywhere-opensource-src-4.8.6.tar.gz
  • 解压
  • cd 进入解压后的目录,命令

 

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

命令参数含义如下所示(带有+号的是默认选项):

-static ............ Create and use static Qt libraries.
-opensource ........ Compile and link the Open-Source Edition of Qt.
-release ........... Compile and link Qt with debugging turned off.

Third Party Libraries:

-qt-zlib ........... Use the zlib bundled with Qt.
+ -system-zlib ....... Use zlib from the operating system.
See http://www.gzip.org/zlib

-no-gif ............ Do not compile GIF reading support.

-no-libtiff ........ Do not compile TIFF support.
-qt-libtiff ........ Use the libtiff bundled with Qt.
+ -system-libtiff .... Use libtiff from the operating system.
See http://www.libtiff.org

-no-libpng ......... Do not compile PNG support.
-qt-libpng ......... Use the libpng bundled with Qt.
+ -system-libpng ..... Use libpng from the operating system.
See http://www.libpng.org/pub/png

-no-libmng ......... Do not compile MNG support.
-qt-libmng ......... Use the libmng bundled with Qt.
+ -system-libmng ..... Use libmng from the operating system.
See http://www.libmng.com

-no-libjpeg ........ Do not compile JPEG support.
-qt-libjpeg ........ Use the libjpeg bundled with Qt.
+ -system-libjpeg .... Use libjpeg from the operating system.
See http://www.ijg.org

-no-sql-<driver> ... Disable SQL <driver> entirely.
-qt-sql-<driver> ... Enable a SQL <driver> in the QtSql library, by default
none are turned on.
-plugin-sql-<driver> Enable SQL <driver> as a plugin to be linked to at run time.
Possible values for <driver>:
[ db2 ibase mysql oci odbc psql sqlite sqlite2 sqlite_symbian symsql tds ]

-prefix <dir> ...... This will install everything relative to <dir>
(default /usr/local/Trolltech/Qt-4.8.6_static)
  • make

make的时间还是那么的长。。。

在configure命令的参数里面,没有添加-qt-sql-sqlite的时候, 会出现下面错误。

只好重新configure了。

main.cpp:(.text.startup+0x1dd6): undefined reference to `qt_plugin_instance_qsqlite()‘
collect2: ld 返回 1
make[4]: *** [../../../../bin/assistant] 错误 1
make[4]:正在离开目录 `/media/software/qtRes/qt-everywhere-opensource-src-4.8.6/tools/assistant/tools/assistant‘
make[3]: *** [sub-assistant-make_default-ordered] 错误 2
make[3]:正在离开目录 `/media/software/qtRes/qt-everywhere-opensource-src-4.8.6/tools/assistant/tools‘
make[2]: *** [sub-tools-make_default-ordered] 错误 2
make[2]:正在离开目录 `/media/software/qtRes/qt-everywhere-opensource-src-4.8.6/tools/assistant‘
make[1]: *** [sub-assistant-make_default-ordered] 错误 2
make[1]:正在离开目录 `/media/software/qtRes/qt-everywhere-opensource-src-4.8.6/tools‘
make: *** [sub-tools-make_default-ordered] 错误 2

  如果我想添加-qt-sql-mysql,显示不成功?

  • sudo make install
  • 测试:
  1. 建立文件夹,然后写程序文件main.cpp
  2. qmake -project
  3. 生成pro文件后在里面加入CONFIG += static
  4. qmake
  5. 生成Makefile后在cxxflags的=后插入-static
  6. make
时间: 2024-10-06 05:59:40

QT4.8.6静态编译的相关文章

【原创】WIN7+VS2010+QT4.8.1+静态编译 全过程

前言: 先说一些废话,本文成形,参考了大量的网上资料.对此十分感谢.附上一此网址: http://www.cnblogs.com/elect-fans/archive/2012/03/29/2422816.html 一.下载源码并解压 从QT官网http://qt.nokia.com/ 下载最新的QT源码包,我下载的是4.8.1的版本.文件名为“qt-everywhere-opensource-src-4.8.1.zip”.用解压软件解压到”C:\QT-4.8.1”. 一些说明: 1.解压路径可

用mingw静态编译Qt4.8.2和Qt5.1.1(需要修改不少源码)

因为一些乱七八糟的原因,我需要用mingw静态编译Qt4.8.2和Qt5.1.1.经历了一天的折腾之后,自觉编译一下Qt还是件颇为麻烦的事情,故将过程略作总结,以备不时之需. 首先,在编译之前,我需要下载mingw.qt-everywhere-opensource-src-4.8.2和qt-everywhere-opensource-src-5.1.1. 然后,准备开始编译了,当然先得把压缩包解压到一个合适的地方.我这里的路径是"C:\Qt"下面. 解压完毕后,先试着编译Qt4.8.2

亲测VS2010纯静态编译QT4.8.0,实现VS2010编译调试Qt程序,QtCreator静态发布程序(图文并茂,非常详细)

下载源代码,注意一定是源码压缩包如qt-everywhere-opensource-src-4.8.0.zip,不是Qt发布的已编译的不同版本的标准库如qt-win-opensource-4.8.0-vs2010.exe,这些版本都只是动态编译的,不是我们所需要的.只有用源码包才能做真正的纯静态编译,如果用Qt官网已编译的标准库.exe文件进行编译,有可能出现各种错误,而且编译后的文件巨大,我当时就在这里绕了很大的弯子,请童鞋们注意啦!!可能有些老鸟会笑话,但我本着最严肃的态度告诉菜鸟们,上网查

Ubuntu下Qt-4.7.1的静态编译

最近在学习Qt的静态编译,相比较来说windows的Qt静态编译比较容易,相反对于linux编译网上的文章实践下来都有这样那样的错误,这里简要小结一下自己的编译成果. 一.实验环境 1.Ubuntu 10.04 2.qt-x11-opensource-4.7.1.tar.gz 二.前期准备 在安装好Ubuntu 10.04后默认是没有安装程序编译软件包的,所以我们首先是要配置ubuntu. 配置方法:(推荐全程root用户模式) 1.首先调整网络设置使得机器可以上网(具体做法因人而异,这边就忽略

win7 32位下 QT4.8.6 从安装配置到静态编译

  最近用QT编了一个很水的小程序,虽然之前用过QT但是编出来的程序都是在本机运行,本地的环境什么的当然配置好了能运行,但是拿到别的机子上就不行了,QT默认的编译方式是动态编译,即运行程序需要依赖QT动态链接库中的dll文件,如果想在别的电脑上运行你的程序,就需要把这些dll文件一起放到exe下一起带走,但是QT有几个动态链接库太大了一个就要上百兆,如果你的程序中需要用到这些dll文件中的东西,就需要一起带走,这样的话你做一个很小的程序最后需要运行的话足足要几百兆的空间,很是浪费.还好QT提供了

Qt4静态编译安装后找不到链接问题的解决办法

静态编译并安装(make install)Qt4的库后,若将原来的源码所在文件夹删除,则会出现无法链接到/XXX/XXX.lib的情况.这个/XXX/的路径又往往是之前编译静态库时源代码所在的目录.打开工程的makefile.release(debug)一看,才发现原来链接的库的路径不是我们编译后make install的路径,而是之前源代码路径下的库,显然这是qmake生成makefile时的问题.解决这个问题很简单,只需将安装目录下lib文件夹中.prl文件中的QMAKE_PRL_LIBS中

qt4.8.5 qtwebkit 静态编译 版本

2013年就编译好了,qtwebkit是最不好编译的了,尤其是静态编译,这儿分享给大家 估计总有人会用得到... 静态库下载地址:http://yunpan.cn/cyyNqrApbVDwq  提取码 eb64 静态qtwebkitdemo:http://yunpan.cn/cyt9DtmPEkW6j  提取码 dd42 作者:混沌游侠 qq:414713276 博客地址:http://www.cnblogs.com/wallini/p/4222438.html 来自为知笔记(Wiz)

Linux下静态编译Qt程序

一般情况下,我们用Qt编译出来的程序是要依赖于系统Qt库的,也就是这个程序移到别的没有安装Qt库的系统上是不能使用的.会提示缺少……库文件之类的错误.这就是动态编译的结果. 但是如果我们想编译一个程序,这个程序在发给别人后,他们可以直接打开,而不需要特别地去先安装Qt库,那就需要采用静态编译了. 在Linux下如何静态编译Qt程序呢? 首先需要先安装静态编译的Qt,也就是静态编译Qt程序首先是需要一个静态编译安装的Qt   1.下载源安装程序,如 qt-x11-opensource-src-4.

QT5静态编译教程,主要针对vs2012(渡世白玉)

QT5,VS2012静态编译,所有的库准备充分的话qwebkit也可以静态编译通过,但是我编译的版本使用中如果用了QWEBVIEW控件在连接时会出错. 注:我自己编译的环境是:win server 2012 dc版 , vs2012 with update1,qt-everywhere-opensource-src-5.0.2,perl和rupy都是在qt官方给的地址下的最新的X64的,python是2.7 X64的... 本文主要针对qt 5.X版本,qt4.X的依赖没那么多,可以酌情参考下,