Btw Qt's configure now requires perl (the one in root folder for sure).
The configure has the following options now:
Code: Select all
Installation options:
These are optional, but you may specify install directories.
-prefix <dir> ...... This will install everything relative to <dir>
(default $QT_INSTALL_PREFIX)
-hostprefix [dir] .. Tools and libraries needed when developing
applications are installed in [dir]. If [dir] is not
given, the current build directory will be used.
(default PREFIX)
You may use these to separate different parts of the install:
-bindir <dir> ...... User executables will be installed to <dir>
(default PREFIX/bin)
-libdir <dir> ...... Libraries will be installed to <dir>
(default PREFIX/lib)
-headerdir <dir> ... Headers will be installed to <dir>
(default PREFIX/include)
-archdatadir <dir> . Architecture-dependent data used by Qt will be
installed to <dir>
(default PREFIX)
-libexecdir <dir> .. Program executables will be installed to <dir>
(default ARCHDATADIR/libexec)
-plugindir <dir> ... Plugins will be installed to <dir>
(default ARCHDATADIR/plugins)
-importdir <dir> ... Imports for QML1 will be installed to <dir>
(default ARCHDATADIR/imports)
-qmldir <dir> ...... Imports for QML2 will be installed to <dir>
(default ARCHDATADIR/qml)
-datadir <dir> ..... Data used by Qt programs will be installed to <dir>
(default PREFIX)
-docdir <dir> ...... Documentation will be installed to <dir>
(default DATADIR/doc)
-translationdir <dir> Translations of Qt programs will be installed to
<dir>
(default DATADIR/translations)
-examplesdir <dir> . Examples will be installed to <dir>
(default PREFIX/examples)
-testsdir <dir> .... Tests will be installed to <dir>
(default PREFIX/tests)
-hostbindir <dir> .. Host executables will be installed to <dir>
(default HOSTPREFIX/bin)
-hostdatadir <dir> . Data used by qmake will be installed to <dir>
(default HOSTPREFIX)
Configure options:
The defaults (*) are usually acceptable. A plus (+) denotes a default value
that needs to be evaluated. If the evaluation succeeds, the feature is
included. Here is a short explanation of each option:
-release ........... Compile and link Qt with debugging turned off.
* -debug ............. Compile and link Qt with debugging turned on.
+ -debug-and-release . Compile and link two Qt libraries, with and without
debugging turned on.
-force-debug-info .. Create symbol files for release builds.
-developer-build ... Compile and link Qt with Qt developer options
(including auto-tests exporting)
-opensource ........ Compile and link the Open-Source Edition of Qt.
-commercial ........ Compile and link the Commercial Edition of Qt.
-c++11 ............. Compile Qt with C++11 support enabled.
-no-c++11 .......... Do not compile Qt with C++11 support enabled.
* -shared ............ Create and use shared Qt libraries.
-static ............ Create and use static Qt libraries.
-ltcg .............. Use Link Time Code Generation. (Release builds only)
* -no-ltcg ........... Do not use Link Time Code Generation.
* -no-fast ........... Configure Qt normally by generating Makefiles for all
project files.
-fast .............. Configure Qt quickly by generating Makefiles only for
library and subdirectory targets. All other Makefiles
are created as wrappers which will in turn run qmake.
-make <part> ....... Add part to the list of parts to be built at make time
libs
tools
examples
-nomake <part> ..... Exclude part from the list of parts to be built.
-no-widgets ........ Disable QtWidgets module.
-no-accessibility .. Do not compile Windows Active Accessibility support.
* -accessibility ..... Compile Windows Active Accessibility support.
-no-sql-<driver> ... Disable SQL <driver> entirely, by default none are
turned on.
-qt-sql-<driver> ... Enable a SQL <driver> in the Qt Library.
-plugin-sql-<driver> Enable SQL <driver> as a plugin to be linked to at run
time.
Available values for <driver>:
mysql
psql
oci
odbc
tds
db2
+ sqlite
sqlite2
ibase
(drivers marked with a '+' have been detected as
available on this system)
-system-sqlite ..... Use sqlite from the operating system.
-no-opengl ......... Do not support OpenGL.
-opengl <api> ...... Enable OpenGL support with specified API version.
Available values for <api>:
desktop - Enable support for Desktop OpenGL
es1 - Enable support for OpenGL ES Common Profile
* es2 - Enable support for OpenGL ES 2.0
* -no-openvg ......... Disables OpenVG functionality.
-openvg ............ Enables OpenVG functionality.
-force-asserts ..... Activate asserts in release mode.
-platform <spec> ... The operating system and compiler you are building on.
(default %QMAKESPEC%)
-xplatform <spec> .. The operating system and compiler you are cross
compiling to.
See the README file for a list of supported operating
systems and compilers.
-sysroot <dir> ..... Sets <dir> as the target compiler's and qmake's
sysroot and also sets pkg-config paths.
-no-gcc-sysroot .... When using -sysroot, it disables the passing of
--sysroot to the compiler.
* -no-nis ............ Do not compile NIS support.
-nis ............... Compile NIS support.
-neon .............. Enable the use of NEON instructions.
* -no-neon ........... Do not enable the use of NEON instructions.
-no-iconv .......... Do not enable support for iconv(3).
+ -iconv ............. Enable support for iconv(3).
+ -sun-iconv ......... Enable support for iconv(3) using sun-iconv.
+ -gnu-iconv ......... Enable support for iconv(3) using gnu-libiconv.
+ -inotify ........... Explicitly enable Qt inotify(7) support.
-no-inotify ........ Explicitly disable Qt inotify(7) support.
* -largefile ......... Enables Qt to access files larger than 4 GB.
-fontconfig ........ Build with FontConfig support.
* -no-fontconfig ..... Do not build with FontConfig support.
-posix-ipc ......... Enable POSIX IPC.
-glib .............. Compile Glib support.
-sysconfdir <dir> .. Settings used by Qt programs will be looked for in
<dir>.
-system-proxies .... Use system network proxies by default.
* -no-system-proxies . Do not use system network proxies by default.
-qtnamespace <name> Wraps all Qt library code in 'namespace name {...}'.
-qtlibinfix <infix> Renames all Qt* libs to Qt*<infix>.
-D <define> ........ Add an explicit define to the preprocessor.
-I <includepath> ... Add an explicit include path.
-L <librarypath> ... Add an explicit library path.
-l <libraryname> ... Add an explicit library name, residing in a
librarypath.
-help, -h, -? ...... Display this information.
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
-qt-pcre ........... Use the PCRE library bundled with Qt.
-system-pcre ....... Use the PCRE library from the operating system.
See http://pcre.org/
+ -icu ............... Use the ICU library.
-no-icu ............ Do not use the ICU library.
See http://site.icu-project.org/
-no-gif ............ Do not compile GIF reading support.
-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-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-freetype ....... Do not compile in Freetype2 support.
* -qt-freetype ....... Use the libfreetype bundled with Qt.
* -system-freetype ... Use the libfreetype provided by the system.
+ -angle ............. Use the ANGLE implementation of OpenGL ES 2.0.
-no-angle .......... Do not use ANGLE.
See http://code.google.com/p/angleproject/
Qt for Windows only:
-no-vcproj ......... Do not generate VC++ .vcproj files.
* -vcproj ............ Generate VC++ .vcproj files, only if platform
"win32-msvc.net".
-no-incredibuild-xge Do not add IncrediBuild XGE distribution commands to
custom build steps.
+ -incredibuild-xge .. Add IncrediBuild XGE distribution commands to custom
build steps. This will distribute MOC and UIC steps,
and other custom buildsteps which are added to the
INCREDIBUILD_XGE variable.
(The IncrediBuild distribution commands are only added
to Visual Studio projects)
-no-plugin-manifests Do not embed manifests in plugins.
* -plugin-manifests .. Embed manifests in plugins.
-no-qmake .......... Do not compile qmake.
* -qmake ............. Compile qmake.
* -process ........... Generate top-level Makefiles/Project files.
-fully-process ..... Generate Makefiles/Project files for the entire Qt
tree.
-dont-process ...... Do not generate Makefiles/Project files. This will
override -no-fast if specified.
-no-rtti ........... Do not compile runtime type information.
* -rtti .............. Compile runtime type information.
-no-strip .......... Do not strip libraries and executables of debug info
when installing.
* -strip ............. Strip libraries and executables of debug info when
installing.
-no-sse2 ........... Do not compile with use of SSE2 instructions.
+ -sse2 .............. Compile with use of SSE2 instructions.
-no-sse3 ........... Do not compile with use of SSE3 instructions.
+ -sse3 .............. Compile with use of SSE3 instructions.
-no-ssse3 .......... Do not compile with use of SSSE3 instructions.
+ -ssse3 ............. Compile with use of SSSE3 instructions.
-no-sse4.1 ......... Do not compile with use of SSE4.1 instructions.
+ -sse4.1 ............ Compile with use of SSE4.1 instructions.
-no-sse4.2 ......... Do not compile with use of SSE4.2 instructions.
+ -sse4.2 ............ Compile with use of SSE4.2 instructions.
-no-avx ............ Do not compile with use of AVX instructions.
+ -avx ............... Compile with use of AVX instructions.
-no-avx2 ........... Do not compile with use of AVX2 instructions.
+ -avx2 .............. Compile with use of AVX2 instructions.
-no-openssl ........ Do not compile support for OpenSSL.
+ -openssl ........... Enable run-time OpenSSL support.
-openssl-linked .... Enable linked OpenSSL support.
-no-dbus ........... Do not compile in D-Bus support.
+ -dbus .............. Compile in D-Bus support and load libdbus-1
dynamically.
-dbus-linked ....... Compile in D-Bus support and link to libdbus-1.
-no-audio-backend .. Do not compile in the platform audio backend into
QtMultimedia.
+ -audio-backend ..... Compile in the platform audio backend into
QtMultimedia.
-no-qml-debug ...... Do not build the in-process QML debugging support.
* -qml-debug ......... Build the in-process QML debugging support.
* -no-directwrite .... Do not build support for DirectWrite font rendering.
-directwrite ....... Build support for DirectWrite font rendering
(experimental, requires DirectWrite availability on
target systems, e.g. Windows Vista with Platform
Update, Windows 7, etc.)
-no-style-<style> .. Disable <style> entirely.
-qt-style-<style> .. Enable <style> in the Qt Library.
Available styles:
* windows
+ windowsxp
+ windowsvista
* fusion
windowsce
windowsmobile
-no-native-gestures Do not use native gestures on Windows 7.
* -native-gestures ... Use native gestures on Windows 7.
* -no-mp ............. Do not use multiple processors for compiling with MSVC
-mp ................ Use multiple processors for compiling with MSVC (-MP).
-loadconfig <config> Run configure with the parameters from file configure_
<config>.cache.
-saveconfig <config> Run configure and save the parameters in file
configure_<config>.cache.
-redo .............. Run configure with the same parameters as last time.
Qt for Windows CE only:
-no-iwmmxt ......... Do not compile with use of IWMMXT instructions.
+ -iwmmxt ............ Do compile with use of IWMMXT instructions. (Qt for
Windows CE on Arm only)
* -no-crt ............ Do not add the C runtime to default deployment rules.
-qt-crt ............ Qt identifies C runtime during project generation.
-crt <path> ........ Specify path to C runtime used for project generation.
-no-cetest ......... Do not compile Windows CE remote test application.
+ -cetest ............ Compile Windows CE remote test application.
-signature <file> .. Use <file> for signing the target project.
Code: Select all
[-no]-exceptions
[-no]-stl
-no-xmlpatterns
[-no]-qt3support
-graphicssystem <value>
-[qt|no]-libmng
-[qt|no]-libtiff
[-no]-dsp
[-no]-3dnow
[-no]-mmx
[-no]-sse
[-no]-phonon
[-no]-phonon-backend
[-no]-multimedia
[-no]-webkit
[-no]-script
[-no]-scripttools
[-no]-declarative
[-no]-declarative-debug
-[no|qt]-style-s60
-[no|qt]-style-cde
-[no|qt]-style-motif
-[no|qt]t-style-cleanlooks
-[no|qt]-style-plastique
SSE stuff seems to have runtime checks (I hope): saw no usual -DQT_HAS_MMX during QtCore compilation. Or maybe they removed SSE defines from all modules except QtOpenGL (it was used only there anyway). "-qt-freetype" and "-qt-pcre"; Qt now has freetype and libpcre bundled.
P.S. I'm not able to build stuff continuously now (bought new CPU and still have old cooler - sky high temps on full load, even setting process affinity doesn't help).
Edit:
Just looked through qmakespecs
Code: Select all
QMAKE_CFLAGS_SSE2 = -arch:SSE2
QMAKE_CFLAGS_SSE3 = -arch:SSE2
QMAKE_CFLAGS_SSSE3 = -arch:SSE2
QMAKE_CFLAGS_SSE4_1 = -arch:SSE2
QMAKE_CFLAGS_SSE4_2 = -arch:SSE2
QMAKE_CFLAGS_AVX = -arch:AVX
QMAKE_CFLAGS_AVX2 = -arch:AVX
Attaching screenshot of typical dynamic build for qBt (to compare size). QtGui now consists of two modules: gui and widgets.