Qt 通用pro配置

发布时间:2026/9/22 7:24:43

Qt 通用pro配置 提供一个通用的Qt pro工程配置#-------------------------------------------------##PS:应将此配置放置在pro文件的最后,否则可能会不起作用#PS:示例中的 contains 可以替换为 equals,行后面的{一定不要换行否则不能识别# # 以下配置为程序输出目录配置模板,根据需要自行修改 # 其中,默认认为整个工程使用SubDir工程,且子工程为非SubDir工程.# 如有不同,请根据情况进行修改 # # # 主要就是配置TARGET(目标名字)以及DESTDIR(目标目录),DLLDESTDIR(动态库自动复制目录)# 将TARGET在debug状况下加上d后缀 # 将DESTDIR设置到bin目录下,而在目标为动态库时修改为放入lib目录下 # 将DLLDESTDIR设置为bin目录,用于将动态库的自动发布复制 # # 配置后,release以及debug目录将会出现在目标路径的output文件夹下 # 并且会将子工程的ui生成文件放入子工程相应的ui目录下 # #-------------------------------------------------#设置UI文件目录 UI_DIR./uiCONFIG(debug,debug|release){#设置debug配置下编译生成文件的路径 TARGET$$join(TARGET,,,d)#为debug版本生成的文件增加d的后缀contains(TEMPLATE,lib){DESTDIR../output/debug/lib #将库放在lib文件夹下 DLLDESTDIR../output/debug/bin #将动态库自动拷贝至bin目录下}else{DESTDIR../output/debug/bin #将应用程序放在bin目录下}OBJECTS_DIR./debug/obj #将生成的对象文件放在专门的obj文件夹下 MOC_DIR./debug/moc #将QT自动生成的对象放在moc文件夹下}else{#设置release配置下编译生成文件的路径contains(TEMPLATE,lib){DESTDIR../output/release/lib #将库放在lib文件夹下 DLLDESTDIR../output/release/bin #将动态库自动拷贝至bin目录下}else{DESTDIR../output/release/bin #将应用程序放在bin目录下}OBJECTS_DIR./release/obj #将生成的对象文件放在专门的obj文件夹下 MOC_DIR./release/moc #将QT自动生成的对象放在moc文件夹下}#使用message打印宏定义#message只支持一个参数所以需要打印message(********start********)message(def:$$DEFINES)message(dst dir:$$DESTDIR)message(def:$$DEFINES $$DESTDIR $$LIBS)message(********end********)根据输出文件是可执行文件还是库文件来设置不同的输出目录CONFIG(debug,debug|release){equals(TEMPLATE,app){DESTDIR$$PWD/../build/debug/bin}equals(TEMPLATE,lib){DESTDIR$$PWD/../build/debug/lib DLLDESTDIR$$PWD/../build/debug/bin}}CONFIG(release,debug|release){equals(TEMPLATE,app){DESTDIR$$PWD/../build/release/bin}equals(TEMPLATE,lib){DESTDIR$$PWD/../build/release/lib DLLDESTDIR$$PWD/../build/release/bin}}根据32位和64位架构控制输出目录#//指定目标文件的输出目录//32位contains(QT_ARCH,i386){CONFIG(release,release|debug){DESTDIR$$PWD/bin/x86/release}else{DESTDIR$$PWD/bin/x86/debug}}//64位contains(QT_ARCH,x86_64){CONFIG(release,release|debug){DESTDIR$$PWD/bin/x64/release}else{DESTDIR$$PWD/bin/x64/debug}}#//指定中间文件的生成路径MOC_DIR$$PWD/temp/$$TARGET/moc RCC_DIR$$PWD/temp/$$TARGET/rcc UI_DIR$$PWD/temp/$$TARGET/ui OBJECTS_DIR$$PWD/temp/$$TARGET/objMagic工程控制输出文件路径BUILD_DIR$$PWD/../bin/build # 编译路径 BIN_DIR$$PWD/../bin # 二进制文件输出路径 TARGETMediaManagerTest # 目标文件名CONFIG(debug,debug|release){OBJECTS_DIR$$BUILD_DIR/debug/$$TARGET/objRCC_DIR$$BUILD_DIR/debug/$$TARGET/rccMOC_DIR$$BUILD_DIR/debug/$$TARGET/mocUI_DIR$$BUILD_DIR/debug/$$TARGET/uiDESTDIR$$BIN_DIR/debug}CONFIG(release,debug|release){OBJECTS_DIR$$BUILD_DIR/release/$$TARGET/objRCC_DIR$$BUILD_DIR/release/$$TARGET/rccMOC_DIR$$BUILD_DIR/release/$$TARGET/mocUI_DIR$$BUILD_DIR/release/$$TARGET/uiDESTDIR$$BIN_DIR/release}QT工程文件的常见参数如果指定TEMPLATE为lib模板且未指定CONFIG为静态库或者动态库则默认生成动态库。QTcore gui sql dbusgreaterThan(QT_MAJOR_VERSION,4):QTwidgets DESTDIR$$PWD/../app/bin TARGETapp DEFINESQT_DEPRECATED_WARNINGS DEFINESQT_MESSAGELOGCONTEXT DEFINESARM QMAKE_CXXFLAGS_RELEASE-Os MOC_DIR$$PWD/../temp/$$TARGET/moc RCC_DIR$$PWD/../temp/$$TARGET/rcc UI_DIR$$PWD/../temp/$$TARGET/ui OBJECTS_DIR$$PWD/../temp/$$TARGET/objinclude(res/res.pri)include(ui/ui.pri)include(base/base.pri)include(main/main.pri)#include($$PWD/../3rdparty/3rdparty.pri)include($$PWD/ballistics/ballisitcs/ballisitcs.pri)include($$PWD/config/configuration/configuration.pri)include($$PWD/statusmanager/statusmanager/statusmanager.pri)include($$PWD/device/devicemanager/devicemanager.pri)include($$PWD/media/mediamanager/mediamanager.pri)include($$PWD/common/common.pri)include($$PWD/httpserver/httpserver/httpserver.pri)include($$PWD/logger/logger.pri)include($$PWD/videorecorder/recordmanager/recordmanager.pri)include($$PWD/database/database/database.pri)include($$PWD/reticle/reticle/reticle/reticle.pri)include(commandhandler/commandhandler.pri)include(messagehandler/messagehandler.pri)include($$PWD/playback/playback/playback.pri)INCLUDEPATH$$PWD/../3rdparty/poco/include INCLUDEPATH$$PWD/../3rdparty/hal/include INCLUDEPATH$$PWD/../3rdparty/ffmpeg/include INCLUDEPATH$$PWD/../3rdparty/x264/include INCLUDEPATH$$PWD/../3rdparty/libyuv/include INCLUDEPATH$$PWD/../3rdparty/rtsp/include INCLUDEPATH$$PWD/../3rdparty/codec/include LIBS-L$$PWD/../3rdparty/poco/lib LIBS-L$$PWD/../3rdparty/hal/lib LIBS-L$$PWD/../3rdparty/hal/layer_lib LIBS-L$$PWD/../3rdparty/ffmpeg/lib LIBS-L$$PWD/../3rdparty/x264/lib LIBS-L$$PWD/../3rdparty/libyuv/lib LIBS-L$$PWD/../3rdparty/rtsp/lib LIBS-L$$PWD/../3rdparty/codec/lib LIBS-l:libyuv.a LIBS-lguide_hal LIBS-Xlinker \-(\-l:libPocoCppParser.a \-l:libPocoCrypto.a \-l:libPocoData.a \-l:libPocoDataSQLite.a \-l:libPocoEncodings.a \-l:libPocoFoundation.a \-l:libPocoJSON.a \-l:libPocoMongoDB.a \-l:libPocoNet.a \-l:libPocoNetSSL.a \-l:libPocoPDF.a \-l:libPocoRedis.a \-l:libPocoUtil.a \-l:libPocoXML.a \-l:libPocoZip.a \-l:libcrypto.a \-l:libssl.a \-l:libavformat.a \-l:libavcodec.a \-l:libavdevice.a \-l:libavfilter.a \-l:libswscale.a \-l:libswresample.a \-l:libavutil.a \-l:libx264.a \-l:libGuideInfraredVideoDecoder.a \-l:libGuideInfraredVideoRecorder.a \-l:libcompress-alg.a \-l:liblive-rtsp-server.a \-l:libphz76-rtsp-server.a-Xlinker \-)\-ldl LIBS-lguide_hal LIBS-Wl,-rpath-link,$$PWD/../3rdparty/hal/lib:$$PWD/../3rdparty/hal/layer_lib LIBS-Wl,-rpath,/lib:/usr/lib:/usrdata/lib:/usrdata/qt-5.7.0/libQMake部分语法
延伸阅读

更多相关文章

2026/9/22 7:22:41

如何快速上手InvenTree:开源库存管理系统的完整入门指南

如何快速上手InvenTree:开源库存管理系统的完整入门指南 【免费下载链接】InvenTree Open Source Inventory Management System 项目地址: https://gitcode.com/GitHub_Trending/in/InvenTree 想要告别Excel表格管理库存的混乱吗?InvenTree这款开…

2026/9/22 7:23:21

JAVA的22种设计模式

目录 设计模式的目的 设计模式的七大原则 设计模式的三大分类及概述 1、创建型模式 2、结构型模式 3、行为型模式 23种设计模式 单例模式--创建型 代理模式--结构型 装饰器模式--结构型 仲裁者模式/中介者模式--行为型 案例说明 伪Java代码 模板模式--行为型 工…

2026/9/21 21:56:52

Generate Forcing Files

Grab the entire region’s stations (https://coastwatch.glerl.noaa.gov/marobs/stations.lmd) or for a specific lake “stations-superior.lmd”. And save it to the target path. The address might change. Please see the screenshot below.The station lmd files can…

2026/9/22 7:20:11

黄家驹头像速查手册:3步搞定前端头像压缩与加载优化

黄家驹头像速查手册:3步搞定前端头像压缩与加载优化 官方文档堆砌了上百页的图像优化理论,新人根本抓不住重点。 你需要一份能直接上手的 速查手册 ,而不是让你翻遍 RFC 规范去猜浏览器行为。 本文不讲虚的,直接拆解 黄家驹头像…

2026/9/22 7:20:11

拉钩备考保姆级教程:3步搞定证书年审与查询

拉钩备考保姆级教程:3步搞定证书年审与查询 报错一堆看不懂?StackTrace 满屏红字?别慌,这其实是很多刚接触技术或转行小伙伴的通病。 今天这篇 保姆级教程 ,不聊虚的,专门针对大家在【拉钩】招聘平台上找机会时,经常被 HR…

2026/9/22 7:20:11

3招搞定狗狗简笔画生成器,实战项目避坑指南

3招搞定狗狗简笔画生成器,实战项目避坑指南 配置环境就卡半天?别急,这是每个转行做开发的朋友都经历过的噩梦。 我见过太多人在安装依赖时,因为版本冲突或网络超时,直接放弃了一个 实战项目…

2026/9/22 7:20:11

3个面试翻车案例拆解kfc宅急送实战项目

3个面试翻车案例拆解kfc宅急送实战项目 面试被问“kfc宅急送”的订单状态机怎么实现,我愣了三秒。不是没写过,是只照着视频敲代码,没啃过底层逻辑。后来复盘发现,80%的初学者都在犯同一个错:把 实战项目…

2026/9/22 7:15:11

2026最新:包含的英文性能优化实战,告别官方文档陷阱

2026最新:包含的英文性能优化实战,告别官方文档陷阱 翻过几百页官方文档,还是没搞懂【包含的英文】到底慢在哪?这不是你不够努力,是资料太碎。2026最新的实战经验表明,性能瓶颈往往藏在最不起眼的地方。别被那些长篇大论吓退,咱们直接看代码。…

2026/9/21 3:28:31

GAMP 5 基于风险的计算机化系统验证:软件分类与审计追踪实践

简介:《A Risk-Based Approach to Compliant GxP Computerized Systems》即业内熟知的GAMP 5指南,面向制药企业质量与IT合规人员、验证工程师及计算机化系统管理者,用于解决GxP法规环境下系统合规性难以科学落地的问题。文档以风险管理为主线…

2026/9/21 3:33:19

安全托管MSSP实战:从静态防御到人机协同的攻防运营与应急响应

简介:这份PPT围绕互联网业务安全托管服务展开,面向企业安全负责人、IT运维人员及关注MSSP/MSS选型的读者,重点回应传统安全过度依赖人工、碎片化静态防御难以对抗产业化攻击等痛点。资源共1个pptx文件,包体约30.63MB,以…

2026/9/22 0:04:49

输电线路在线监测高频面试题拆解 3秒抓住官方文档重点

输电线路在线监测高频面试题拆解 3秒抓住官方文档重点 官方文档几百页翻到头还是懵?面试问到 输电线路在线监测 的数据链路时,脑子一片空白?别慌,这种 高频面试题 我整理了10年,专门治各种“文档太长抓不住重点”的毛病。…

2026/9/22 0:04:49

中介房源管理系统重构避坑:3个关键步骤搞定API变更

中介房源管理系统重构避坑:3个关键步骤搞定API变更 版本升级后 API 全变了,这种痛只有真做过的人懂。 很多团队在接手老旧房产项目时,最崩溃的不是代码烂,而是底层框架升级后,原本熟悉的接口调用方式彻底失效。 这份 保姆级教程…

2026/9/22 0:04:49

3个坑点带你一文搞懂55gg小游戏源码

3个坑点带你一文搞懂55gg小游戏源码 盯着控制台满屏的红色报错,看着那一长串 StackTrace ,是不是脑子瞬间宕机?别急,这种时候最忌讳的就是盲目改代码。很多刚入行的前端同学,面对 55gg 小游戏这类轻量级 H5…

2026/9/20 4:54:47

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/21 18:32:12

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/21 10:29:02

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码