Qt源码编译过程中配置文件中的选项说明

文章目录

选项说明默认值
顶级安装目录
-prefix 部署目录,如目标设备上所示。/usr/local/Qt-$QT_VERSION
-extprefix 安装目录,如主机上所示。SYSROOT/PREFIX
-hostprefix [dir]主机上运行的生成工具的安装目录。如果未给定[dir],则将使用当前构建目录EXTPREFIX
-external-hostbindir 为此机器构建的Qt工具路径。当平台与当前系统不匹配时,使用此选项,即进行交叉构建
微调安装目录布局。请注意,除-sysconfdir之外的所有目录都应位于-prefix/-hostprefix下
-bindir 可执行安装目录PREFIX/bin
-headerdir 头文件安装目录PREFIX/include
-libdir 库文件安装目录PREFIX/lib
-archdatadir 依赖于架构的数据安装目录PREFIX
-plugindir 插件安装目录ARCHDATADIR/plugins
-libexecdir 帮助程序安装目录ARCHDATADIR/bin on Windows, ARCHDATADIR/libexec otherwise
-importdir QML1导入目录ARCHDATADIR/imports
-qmldir QML2导入目录ARCHDATADIR/qml
-datadir 不依赖于架构的独立数据安装目录PREFIX
-docdir 文档安装目录DATADIR/doc
-translationdir 翻译安装目录DATADIR/translations
-sysconfdir Qt程序使用的设置安装目录PREFIX/etc/xdg
-examplesdir 例程安装目录PREFIX/examples
-testsdir 测试安装目录PREFIX/tests
-hostbindir 主机可执行文件安装目录HOSTPREFIX/bin
-hostlibdir 主机库安装目录HOSTPREFIX/lib
-hostdatadir qmake使用的数据安装目录HOSTPREFIX
配置元数据
-help, -h显示帮助信息
-verbose, -v在配置期间打印详细消息
-continue尽管有错误,仍继续配置
-redo使用以前使用的选项重新配置。其他选项可能会被传递,但不会被-redo保存以供以后使用。
-recheck [test,…]放弃缓存的否定配置测试结果。在安装缺少的依赖项后使用此选项。或者,如果指定了测试,则只丢弃其结果。
-recheck-all放弃所有缓存的配置测试结果。
-feature-启用
-no-feature-放弃启用
-list-features列出可用功能。请注意,某些功能还具有专用的命令行选项。
-list-libraries列出可能的外部依赖项。
构建选项
-opensource构建Qt的开源版本
-commercial构建Qt商业版
-confirm-license自动确认许可证
-release关闭调试时生成Qtyes
-debug打开调试时生成Qtno
-debug-and-release构建Qt的两个版本,启用和不启用调试[yes](仅限苹果和Windows)
-optimize-debug在调试构建[auto]中启用调试友好优化(MSVC或Clang工具链不支持)
-optimize-size优化发布版本的大小而不是速度no
-optimized-tools即使在调试构建中也可以构建优化的主机工具no
-force-debug-info为发布版本创建符号文件no
-separate-debug-info将调试信息拆分为单独的文件no
-gdb-index索引调试信息以加快GDB
-strip去除不需要的符号的释放二进制文件yes
-gc-binaries将每个函数或数据项放入其自己的节中,并启用未使用节的链接器垃圾收集。[自动生成静态生成,否则为否]
-force-asserts即使在发布版本中也启用Q_ASSERTno
-developer-build编译并链接Qt以开发Qt本身(用于自动测试、额外检查等的导出)no
-shared构建共享Qt库(UIKit为否)yes
-static构建静态Qt库(对于UIKit是)no
-framework构建Qt框架捆绑包(仅限Apple)yes
-platform 选择主机mkspecdetected
-xplatform 交叉编译时选择目标mkspecPLATFORM
-device 设备的交叉编译name
-device-option <key=value>为设备mkspec添加选项
-appstore-compliant禁用平台应用商店中不允许的代码。默认情况下,对于需要通过应用商店分发的平台,特别是Android、iOS、tvOS、watchOS和通用Windows平台,此选项处于启用状态auto
-qtnamespace 将所有Qt库代码包装在“namespace<name>{…}”中。
-qtlibinfix 将所有libQt5*.so重命名为libQt5*.so。no
-qtlibinfix-plugins根据-qtlibinfix重命名Qt插件no
-testcocoon使用TestCocoon代码覆盖工具的仪器no
-gcov使用GCov代码覆盖工具的仪器no
-trace [backend]启用带有跟踪点的检测。当前支持的后端是“etw”(Windows)和“lttng”(Linux),或“yes”用于自动检测。no
-sanitize {addressthreadmemory
-coverage {trace-pc-guard}添加代码覆盖率检测
-c++std 选择C++标准[C++2a/C++17/C++14/C++11](MSVC 2015不支持)
-sse2使用SSE2指令auto
-sse3/-ssse3/-sse4.1/-sse4.2/-avx/-avx2/-avx512启用特定x86指令[auto]启用的指令仍受运行时检测的影响。auto
-mips_dsp/-mips_dspr2使用MIPS DSP/rev2指令auto
-qreal typedef qreal到指定类型double
-R 向Qt库添加显式运行库路径。支持相对于LIBDIR的路径。
-rpath使用库安装路径作为运行库路径链接Qt库和可执行文件。类似于-R LIBDIR。在Apple平台上,禁用这意味着对动态库和框架使用绝对安装名称(基于LIBDIR)auto
-reduce-exports减少导出符号的数量auto
-reduce-relocations减少搬迁数量(Unix only)auto
-plugin-manifests将清单嵌入插件(Windows only)no
-static-runtime对于-static,使用静态运行时(Windows only)no
-pch使用预编译头auto
-ltcg使用链接时间代码生成no
-linker [bfd,gold,lld]强制使用GNUld、GNUgold或LLVM/LDD链接器,而不是默认链接器(仅限GCC)
-incredibuild-xge使用IncrediBuild XGE(仅限Windows)no
-ccache使用ccache编译器缓存(仅限Unix)no
-make-tool 使用构建qmake(仅限Windows)nomake
-mp使用多个处理器进行编译(仅限MSVC)
-warnings-are-errors将警告视为错误no
-silent减少生成输出,以便更容易看到警告和错误
生成环境
-sysroot 设置为目标sysroot
-gcc-sysroot使用-sysroot,将–sysroot传递给编译器yes
-pkg-config使用pkg配置(Unix only)auto
-D 传递额外的预处理器定义
-I 传递附加包含路径
-L 传递附加库路径
-F 传递附加框架路径(仅限Apple)
-sdk 使用苹果提供的SDK<SDK>构建Qt。参数应该是“xcodebuild-showsdks”列出的可用SDK之一。注意,该参数仅适用于使用目标mkspec构建的Qt库和应用程序,而不适用于qmake、moc、rcc等主机工具。
-android-sdk path设置Android SDK根路径$ANDROID_SDK_ROOT
-android-ndk path设置Android NDK根路径$ANDROID_NDK_ROOT
-android-ndk-platform设置Android平台
-android-ndk-host设置Android NDK主机(linux-x86、linux-x86_64等)$ANDROID_NDK_HOST
-android-abis逗号分隔的Android abis,默认为:armeabi-v7a、arm64-v8a、x86、x86_64
-android-style-assets在运行时自动从设备中提取样式资源。此选项使Android风格正确运行,但也使Android平台插件与LGPL2.1不兼容yes
组件选择
-skip 从生成中排除整个存储库
-make 将<part>添加到要构建的部件列表中。指定此选项将首先清除默认列表
-nomake 从要生成的零件列表中排除
-compile-examples取消设置时,仅安装示例源yes
-gui构建Qt GUI模块和依赖项yes
-widgets构建Qt Widgets模块和依赖项yes
-no-dbus不构建Qt D-Bus模块yes
-dbus-linked构建Qt D-Bus并链接到libdbus-1auto
-dbus-runtime构建Qt D-Bus并动态加载libdbus-1no
-accessibility启用辅助功能支持注意:不建议禁用辅助功能。yes
核心选项
-doubleconversion选择使用的双转换库no表示使用sscanf_l和snprintf_l(不精确)。system/qt/no
-glib启用Glib支持no
-eventfd启用eventfd支持
-inotify启用inotify支持
-iconv启用图标(3)支持posix/sun/gnu/no
-icu启用ICU支持auto
-pcre选择使用的libpcre2system/qt/no
-pps启用PPS支持auto
-zlib选择使用的zlibsystem/qt
记录后端
-journald启用日志支持no
-syslog启用syslog支持no
-slog2启用slog2支持auto
网络选项
-ssl启用任一SSL支持方法auto
-no-openssl不要使用OpenSSLdefault on Apple and WinRT
-openssl-linked使用OpenSSL并链接到libsslno
-openssl-runtime使用OpenSSL并动态加载libsslauto
-schannel使用安全通道 (Windows only)no
-securetransport使用SecureTransport (Apple only)auto
-sctp启用SCTP支持no
-libproxy启用libproxy的使用no
-system-proxies默认情况下使用系统网络代理yes
Gui、打印、小部件选项
-cups启用CUPS支持(Unix only)auto
-fontconfig启用Fontconfig支持(Unix only)auto
-freetype选择使用的FreeTypesystem/qt/no
-harfbuzz选择使用的HarfBuzz NGsystem/qt/no
-gtk启用GTK平台主题支持auto
-lgmon启用lgmon支持(QNX only)auto
-no-opengl禁用OpenGL支持
-opengl 启用OpenGL支持。支持的API:es2(Windows默认)、桌面(Unix默认)、动态(仅Windows)
-opengles3启用OpenGL ES 3.x支持,而不是ES 2.xauto
-egl启用EGL支持auto
-angle使用捆绑的ANGLE支持OpenGL ES 2.0(Windows only)auto
-combined-angle-lib将LibEGL和LibGLESv2合并到LibANGLE中(Windows only)
-qpa 选择默认QPA后端(例如,xcb、cocoa、windows)一个由分号分隔的优先级列表。
-xcb-xlibEnable Xcb-Xlib supportauto
平台后端
-direct2d启用Direct2D支持 (Windows only)auto
-directfb启用DirectFB支持 (Unix only)no
-eglfs启用EGLFS支持auto; no on Android and Windows
-gbm为GBM启用后端 (Linux only)auto
-kms为KMS启用后端 (Linux only)auto
-linuxfb启用Linux Framebuffer支持 (Linux only)auto
-xcb启用X11支持。选择使用的xcb-*库system/qt/no
输入后端
-libudev.启用udev支持auto
-evdev启用evdev支持auto
-imf启用IMF支持 (QNX only)auto
-libinput启用libinput支持auto
-mtdev启用mtdev支持auto
-tslib启用tslib支持auto
-xcb-xinput启用XInput2支持auto
-xkbcommon启用密钥映射支持auto
图像格式
-gif启用GIF阅读支持auto
-ico启用对ICO的支持auto
-libpng选择使用的libpngauto
-libjpeg选择使用的libjpegauto
-jasper使用JasPer库启用JPEG-2000支持no
-mng启用MNG支持no
-tiff启用TIFF支持system/qt/no
-webp启用WEBP支持system/qt/no
数据库选项
-sql-启用SQL<driver>插件。支持的驱动程序:db2 ibase mysql oci odbc psql sqlite2 sqlite tdsauto
-sqlite选择使用的sqlite3system/qt
Qt3D选项
-assimp选择使用的assimp库system/qt/no
-qt3d-profile-jobs启用作业分析no
-qt3d-profile-gl启用OpenGL评测no
-qt3d-simd选择SIMD支持级别no/sse2/avx2
-qt3d-render启用Qt3D渲染工具yes
-qt3d-input启用Qt3D输入功能yes
-qt3d-logic启用Qt3D逻辑功能yes
-qt3d-extras启用Qt3D Extras功能yes
-qt3d-animation启用Qt3D动画功能yes
多媒体选项
-pulseaudio启用PulseAudio支持 (Unix only)auto
-alsa启用ALSA支持 (Unix only)auto
-no-gstreamer禁用对GStreamer的支持
-gstreamer [version]启用GStreamer支持, 如果没有参数,首先尝试1.0,然后尝试0.10。auto
-evr在DirectShow和WMF中启用EVRsystem/qt/no
QtQuick3D选项
-assimp选择使用的assimp库system/qt/no
文本到语音选项
-flite启用Flite支持 (Unix only)auto
-flite-alsa使用ALSA支持启用Flite (Unix only)auto
-speechd启用语音调度程序支持 (Unix only)auto
WebEngine选项
-webengine-alsa启用ALSA支持 (Linux only)auto
-webengine-pulseaudio启用PulseAudio支持 (Linux only)auto
-webengine-embedded-build启用Linux嵌入式构建 (Linux only)auto
-webengine-icu使用系统ICU库 (Linux only)system/qt
-webengine-ffmpeg使用系统FFmpeg库 (Linux only)system/qt
-webengine-opus使用系统Opus库 (Linux only)system/qt
-webengine-webp使用系统WebP库 (Linux only)system/qt
-webengine-pepper-plugins启用Pepper Flash和Widevine插件auto
-webengine-printing-and-pdf启用打印并输出为PDFauto
-webengine-proprietary-codecs启用对专有编解码器的支持no
-webengine-spellchecker启用拼写检查器支持yes
-webengine-native-spellchecker启用对本机拼写检查器的支持 (macOS only)no
-webengine-webrtc启用对WebRTC的支持auto
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AoDeLuo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值