Chinaunix首页 | 论坛 | 博客
  • 博客访问: 138990
  • 博文数量: 57
  • 博客积分: 1405
  • 博客等级: 上尉
  • 技术积分: 585
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-15 17:22
文章存档

2011年(1)

2010年(4)

2009年(52)

我的朋友

分类: 嵌入式

2009-09-16 12:10:11

QT介绍与开发技巧

QT获取
官网:


QT配置方法与详细参数
配置QT时推荐单独建立工作目录,这是基本常识,也是开源代码构建工程的一个必要环节。具体方法如下:

解压源码
tar xjvf qt-embedded-linux-opensource-src-4.5.2.tar.gz

新建工作目录build-qte
mkdir build-qte

定位配置脚本的路径,假设QTE源码与build-qte在同一目录层
cd build-qte
../configure --help

配置提示信息如下:
Usage:  configure [-h] [-prefix ] [-prefix-install] [-bindir ] [-libdir ]
        [-docdir ] [-headerdir ] [-plugindir ] [-datadir ]
        [-translationdir ] [-sysconfdir ] [-examplesdir ]
        [-demosdir ] [-buildkey ] [-release] [-debug]
        [-debug-and-release] [-developer-build] [-shared] [-static] [-no-fast] [-fast] [-no-largefile]
        [-largefile] [-no-exceptions] [-exceptions] [-no-accessibility]
        [-accessibility] [-no-stl] [-stl] [-no-sql-] [-sql-]
        [-plugin-sql-] [-system-sqlite] [-no-qt3support] [-qt3support]
        [-platform] [-D ] [-I ] [-L ] [-help]
        [-qt-zlib] [-system-zlib] [-no-gif] [-qt-gif] [-no-libtiff] [-qt-libtiff] [-system-libtiff]
        [-no-libpng] [-qt-libpng] [-system-libpng] [-no-libmng] [-qt-libmng]
        [-system-libmng] [-no-libjpeg] [-qt-libjpeg] [-system-libjpeg] [-make ]
        [-no-make ] [-R ]  [-l ] [-no-rpath]  [-rpath] [-continue]
        [-verbose] [-v] [-silent] [-no-nis] [-nis] [-no-cups] [-cups] [-no-iconv]
        [-iconv] [-no-pch] [-pch] [-no-dbus] [-dbus] [-dbus-linked]
        [-no-separate-debug-info] [-no-mmx] [-no-3dnow] [-no-sse] [-no-sse2]
        [-qtnamespace ] [-qtlibinfix ] [-separate-debug-info] [-armfpa]
        [-no-optimized-qmake] [-optimized-qmake] [-no-xmlpatterns] [-xmlpatterns]
        [-no-phonon] [-phonon] [-no-phonon-backend] [-phonon-backend]
        [-no-openssl] [-openssl] [-openssl-linked]
        [-no-gtkstyle] [-gtkstyle] [-no-svg] [-svg] [-no-webkit] [-webkit]
        [-no-scripttools] [-scripttools]

        [additional platform specific options (see below)]


Installation options:

 These are optional, but you may specify install directories.

    -prefix ...... This will install everything relative to
                         (default /usr/local/Trolltech/QtEmbedded-4.5.2)

    -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.

  * -prefix-install .... Force a sandboxed "local" installation of
                         Qt. This will install into
                         /usr/local/Trolltech/QtEmbedded-4.5.2, if this option is
                         disabled then some platforms will attempt a
                         "system" install by placing default values to
                         be placed in a system location other than
                         PREFIX.

 You may use these to separate different parts of the install:

    -bindir ......... Executables will be installed to
                            (default PREFIX/bin)
    -libdir ......... Libraries will be installed to
                            (default PREFIX/lib)
    -docdir ......... Documentation will be installed to
                            (default PREFIX/doc)
    -headerdir ...... Headers will be installed to
                            (default PREFIX/include)
    -plugindir ...... Plugins will be installed to
                            (default PREFIX/plugins)
    -datadir ........ Data used by Qt programs will be installed to
                            (default PREFIX)
    -translationdir . Translations of Qt programs will be installed to
                            (default PREFIX/translations)
    -sysconfdir ..... Settings used by Qt programs will be looked for in
                            (default PREFIX/etc/settings)
    -examplesdir .... Examples will be installed to
                            (default PREFIX/examples)
    -demosdir ....... Demos will be installed to
                            (default PREFIX/demos)

 You may use these options to turn on strict plugin loading.

    -buildkey .... Build the Qt library and plugins using the specified
                         .  When the library loads plugins, it will only
                         load those that have a matching key.

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 versions of Qt, with and without
                         debugging turned on (Mac only).

    -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.


 *  -shared ............ Create and use shared Qt libraries.
    -static ............ Create and use static Qt libraries.

 *  -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.

    -no-largefile ...... Disables large file support.
 +  -largefile ......... Enables Qt to access files larger than 4 GB.

 *  -no-exceptions ..... Disable exceptions on compilers that support it.
    -exceptions ........ Enable exceptions on compilers that support it.

    -no-accessibility .. Do not compile Accessibility support.
 *  -accessibility ..... Compile Accessibility support.

    -no-stl ............ Do not compile STL support.
 *  -stl ............... Compile STL support.

    -no-sql- ... Disable SQL entirely.
    -qt-sql- ... Enable a SQL in the QtSql library, by default
                         none are turned on.
    -plugin-sql- Enable SQL as a plugin to be linked to
                         at run time.

                         Possible values for :
                         [  db2 ibase mysql oci odbc psql sqlite sqlite2 tds ]

    -system-sqlite ..... Use sqlite from the operating system.

    -no-qt3support ..... Disables the Qt 3 support functionality.
 *  -qt3support ........ Enables the Qt 3 support functionality.

    -no-xmlpatterns .... Do not build the QtXmlPatterns module.
 +  -xmlpatterns ....... Build the QtXmlPatterns module.
                         QtXmlPatterns is built if a decent C++ compiler
                         is used and exceptions are enabled.

    -no-phonon ......... Do not build the Phonon module.
 +  -phonon ............ Build the Phonon module.
                         Phonon is built if a decent C++ compiler is used.
    -no-phonon-backend.. Do not build the platform phonon plugin.
 +  -phonon-backend..... Build the platform phonon plugin.

    -no-svg ............ Do not build the SVG module.
 +  -svg ............... Build the SVG module.

    -no-webkit ......... Do not build the WebKit module.
 +  -webkit ............ Build the WebKit module.
                         WebKit is built if a decent C++ compiler is used.

    -no-scripttools .... Do not build the QtScriptTools module.
 +  -scripttools ....... Build the QtScriptTools module.

    -platform target ... The operating system and compiler you are building
                         on (qws/linux-x86-g++).

                         See the README file for a list of supported
                         operating systems and compilers.

    -no-mmx ............ Do not compile with use of MMX instructions.
    -no-3dnow .......... Do not compile with use of 3DNOW instructions.
    -no-sse ............ Do not compile with use of SSE instructions.
    -no-sse2 ........... Do not compile with use of SSE2 instructions.

    -qtnamespace   Wraps all Qt library code in 'namespace {...}'.
    -qtlibinfix   Renames all libQt*.so to libQt*.so.

    -D ........ Add an explicit define to the preprocessor.
    -I ........ Add an explicit include path.
    -L ........ Add an explicit library path.

    -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

    -no-gif ............ Do not compile the plugin for GIF reading support.
 *  -qt-gif ............ Compile the plugin for GIF reading support.
                         See also src/plugins/imageformats/gif/qgifhandler.h

    -no-libtiff ........ Do not compile the plugin for TIFF support.
    -qt-libtiff ........ Use the libtiff bundled with Qt.
 +  -system-libtiff .... Use libtiff from the operating system.
                         See

    -no-libpng ......... Do not compile in PNG support.
    -qt-libpng ......... Use the libpng bundled with Qt.
 +  -system-libpng ..... Use libpng from the operating system.
                         See

    -no-libmng ......... Do not compile the plugin for MNG support.
    -qt-libmng ......... Use the libmng bundled with Qt.
 +  -system-libmng ..... Use libmng from the operating system.
                         See

    -no-libjpeg ........ Do not compile the plugin for JPEG support.
    -qt-libjpeg ........ Use the libjpeg bundled with Qt.
 +  -system-libjpeg .... Use libjpeg from the operating system.
                         See

    -no-openssl ........ Do not compile support for OpenSSL.
 +  -openssl ........... Enable run-time OpenSSL support.
    -openssl-linked .... Enabled linked OpenSSL support.

    -ptmalloc .......... Override the system memory allocator with ptmalloc.
                         (Experimental.)

Additional options:

    -make ....... Add part to the list of parts to be built at make time.
                         (libs tools examples demos docs translations)
    -nomake ..... Exclude part from the list of parts to be built.

    -R ........ Add an explicit runtime library path to the Qt
                         libraries.
    -l ........ Add an explicit library.

    -no-rpath .......... Do not use the library install path as a runtime
                         library path.
 +  -rpath ............. Link Qt libraries and executables using the library
                         install path as a runtime library path. Equivalent
                         to -R install_libpath

    -continue .......... Continue as far as possible if an error occurs.

    -verbose, -v ....... Print verbose information about each step of the
                         configure process.

    -silent ............ Reduce the build output so that warnings and errors
                         can be seen more easily.

 *  -no-optimized-qmake ... Do not build qmake optimized.
    -optimized-qmake ...... Build qmake optimized.

    -no-nis ............ Do not compile NIS support.
 *  -nis ............... Compile NIS support.

    -no-cups ........... Do not compile CUPS support.
 *  -cups .............. Compile CUPS support.
                         Requires cups/cups.h and libcups.so.2.

    -no-iconv .......... Do not compile support for iconv(3).
 *  -iconv ............. Compile support for iconv(3).

    -no-pch ............ Do not use precompiled header support.
 *  -pch ............... Use precompiled header support.

    -no-dbus ........... Do not compile the QtDBus module.
 +  -dbus .............. Compile the QtDBus module and dynamically load libdbus-1.
    -dbus-linked ....... Compile the QtDBus module and link to libdbus-1.

    -reduce-relocations ..... Reduce relocations in the libraries through extra
                              linker optimizations (Qt/X11 and Qt for Embedded Linux only;
                              experimental; needs GNU ld >= 2.18).

    -no-separate-debug-info . Do not store debug information in a separate file.
 *  -separate-debug-info .... Strip debug information into a separate .debug file.


Qt for Embedded Linux only:

    -xplatform target ... The target platform when cross-compiling.

    -no-feature- Do not compile in .
    -feature- .. Compile in . The available features
                          are described in src/corelib/global/qfeatures.txt

    -embedded .... This will enable the embedded build, you must have a
                          proper license for this switch to work.
                          Example values for : arm mips x86 generic

    -armfpa ............. Target platform is uses the ARM-FPA floating point format.
    -no-armfpa .......... Target platform does not use the ARM-FPA floating point format.

                          The floating point format is usually autodetected by configure. Use this
                          to override the detected value.

    -little-endian ...... Target platform is little endian (LSB first).
    -big-endian ......... Target platform is big endian (MSB first).

    -host-little-endian . Host platform is little endian (LSB first).
    -host-big-endian .... Host platform is big endian (MSB first).

                          You only need to specify the endianness when
                          cross-compiling, otherwise the host
                          endianness will be used.

    -no-freetype ........ Do not compile in Freetype2 support.
    -qt-freetype ........ Use the libfreetype bundled with Qt.
 *  -system-freetype .... Use libfreetype from the operating system.
                          See

    -qconfig local ...... Use src/corelib/global/qconfig-local.h rather than the
                          default (full).

    -depths ...... Comma-separated list of supported bit-per-pixel
                          depths, from: 1, 4, 8, 12, 15, 16, 18, 24, 32 and 'all'.

    -qt-decoration-