【QT】linux中使用qmake命令行编译release版本或者debug版本

本文详细介绍了如何使用qmake命令在Qt项目中生成debug和release版本的应用程序。通过修改pro文件并执行特定命令,可以创建不同配置的makefile,从而编译出debug或release版本的程序。同时,提供了判断应用程序版本的方法。

(1)如果存在pro文件,进行第二步。如果不存在pro文件执行下面命令生成pro文件。

qmake -project

(2)生成makefile

(2.1)修改pro文件,将其中的

TARGET = 程序名字

改成 

CONFIG+=debug_and_release
CONFIG(debug, debug|release){
    TARGET = 程序名字
} else {
    TARGET = 程序名字
}

然后执行

qmake XXX.pro

会得到多个makefile以及对应的debug,release文件夹,如图:

最后执行下面任一个得到对应的版本的应用程序:

debug版本:     make debug 

release版本:    make release 

全部版本:      make all

(2.2)如果不对pro进行修改,还是保持原来的“TARGET = 程序名字”,直接运行

qmake XXX.pro

只有有一个makefile文件,然后执行make得出来的版本默认是release版本。

【补充备注】如何判断自己生成的应用程序是release还是debug版本呢?有两种方式:

A:查看生成的makefile文件中是否有“DQT_NO_DEBUG”,如果有则为release版本

B:先用ide-qtcreator分别以release以及debug方式编译运行程序,会发现得到的release版本的大小比debug版本要小很多,查看使用qmake命令行得到的应用程序是不是跟ide方式得到的应用程序的大小是一样的。

参考文章:

https://blog.youkuaiyun.com/zzwdkxx/article/details/51385358

### 在命令行编译 Release 版本Qt 工程 要使用命令行编译 Release 版本Qt 工程,需要按照以下方式操作。首先,确保已经正确安装了 Qt 和相关的编译工具链(如 MinGW 或 MSVC)。以下是具体的流程和步骤说明。 #### 生成 Makefile 文件 在命令行中,通过 `qmake` 命令生成 Makefile 文件时,可以指定编译模式为 Release。例如,在 Windows 环境下,可以运行以下命令[^2]: ```bash qmake project.pro -spec win32-msvc "CONFIG+=release" ``` 在 Linux 环境下,则可以运行以下命令[^5]: ```bash qmake project.pro -spec linux-g++ "CONFIG+=release" ``` 上述命令中,`project.pro` 是项目的工程文件名,`-spec` 参数指定了目标平台和编译器类型,而 `"CONFIG+=release"` 则明确指定了 Release 模式。 #### 编译项目 生成 Makefile 后,可以通过调用 `nmake`(Windows 环境)或 `make`(Linux 环境)来完成编译过程。例如: - 在 Windows 环境下: ```bash nmake ``` - 在 Linux 环境下: ```bash make -j8 ``` 其中,`-j8` 参数表示同时使用 8 个线程进行编译,以加速编译过程[^4]。 #### 验证编译结果 编译完成后,可以在输出目录中找到 Release 版本的可执行文件或其他生成的目标文件。通常,Release 版本的文件会被放置在与 Debug 版本不同的目录中,具体路径取决于项目的配置。 --- ### 注意事项 1. 如果需要同时编译 DebugRelease 版本,可以分别运行两次命令,每次指定不同的配置模式。例如: ```bash qmake project.pro -spec win32-msvc "CONFIG+=debug" nmake ``` ```bash qmake project.pro -spec win32-msvc "CONFIG+=release" nmake ``` 2. 在某些情况下,可能需要手动清理之前的编译结果以避免冲突。可以使用以下命令清理旧的编译文件: ```bash nmake clean ``` 或者Linux 环境下: ```bash make clean ``` 3. 如果遇到模块缺失的问题,可以在 `.pro` 文件中显式添加所需的模块。例如,如果需要使用 `Qt Widgets` 模块,可以在 `.pro` 文件中添加以下内容: ```plaintext QT += widgets ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值