通过在命令行上指定各种选项,可以自定义 qmake 在运行时的行为。这允许对构建过程进行微调,提供有用的调试信息,并可用于为项目指定目标平台。
一、命令语法
用于运行 qmake 的语法采用以下简单形式:
qmake [mode] [options] files
二、操作模式 [mode]
qmake 支持两种不同的操作模式。如果要显式设置模式,则必须在所有其他选项之前指定它。
- makefile:qmake 输出将是一个 Makefile(默认)。
- project:qmake 输出将是一个项目文件。
可以使用这些选项来指定常规和特定于模式的设置。
三、文件参数 files
files 参数表示项目文件的列表,以空格分隔。
四、一般选项 [options]
可以在命令行上为 qmake 指定选项,以自定义构建过程,并覆盖平台的默认设置。以下基本选项提供有关使用 qmake 的帮助,指定 qmake 将输出文件写入何处,并控制将写入控制台的调试信息的级别:
- -help:qmake 将检查这些功能并提供一些有用的帮助。
- -o file:qmake 输出将被定向到文件。如果未指定此选项,qmake 将尝试为其输出使用合适的文件名,具体取决于它运行的模式。如果指定了“-”,则输出将定向到 stdout。
- -d:qmake 将输出调试信息。多次添加 -d 会增加冗长。
用于项目的模板通常由项目文件中的 TEMPLATE 变量指定。可以使用以下选项覆盖或修改它:
- -t tmpl:qmake 将使用 tmpl 覆盖任何设置的 TEMPLATE 变量,但仅在 .pro 文件被处理之后。
- -tp prefix:qmake 将为 TEMPLATE 变量添加前缀。
可以微调警告信息的级别,以帮助查找项目文件中的问题:
- -Wall:qmake 将报告所有已知的警告。
- -Wnone:qmake 不会产生警告信息。
- -Wparser:qmake 只会生成解析器警告。这将提示在解析项目文件时常见的陷阱和潜在问题。
- -Wlogic:qmake 将警告项目文件中的常见陷阱和潜在问题。例如,qmake 将报告列表中文件的多次出现和丢失的文件。
五、Makefile 模式选项
qmake -makefile [options] files
在 Makefile 模式下,qmake 将生成用于构建项目的 Makefile。在此模式下可以使用以下选项来影响项目文件的生成方式:
- -after:qmake 将所有赋值都将推迟到解析指定文件之后。
- -nocache:qmake 将忽略 .qmake.cache 文件。
- -nodepend:qmake 不会生成任何依赖信息。
- -cache file:qmake 将使用 file 作为缓存文件,忽略找到的任何其他 .qmake.cache 文件。
- -spec spec:qmake 将使用 spec 作为平台和编译器信息的路径,并忽略 QMAKSPEC 的值。
六、Project 模式选项
qmake -project [options] files
在 project 模式下,qmake 会生成一个项目文件。在此模式下可以使用以下选项:
- -r:qmake 将递归地检查提供的目录。
- -nopwd:qmake 不会在当前的工作目录中查找源代码。它只会使用指定的文件。
在这种模式下,files 参数可以是文件或目录列表。如果指定了一个目录,它将包含在 DEPENDPATH 变量中,并且 DEPENDPATH 包含的文件的相关代码文件将包含在生成的项目文件中。如果给出了一个文件,它将根据其扩展名附加到正确的变量中(例如,将 UI 文件添加到 FORMS,将 C++ 文件添加到 SOURCES)。