Qt编译程序之前将依赖的DLL文件拷贝到指定目录

本文介绍如何在Qt的pro配置文件中设置编译前后的操作,特别是如何在编译前复制dll文件到指定目录。文章详细解释了在Windows系统下,如何解决路径符号不匹配的问题,确保编译过程顺利进行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

qt的pro配置文件中也可添加各种编译前后的操作及配置,主要通过 QMAKE_POST_LINK和QMAKE_PRE_LINK;

QMAKE_POST_LINK表示编译后执行内容

QMAKE_PRE_LINK表示编译前执行内容

由于编译项目的时候,需要依赖相关的dll文件,所以选择编译前拷贝dll文件到指定目录。需要注意的一点是如果使用PWD的方式指定文件所在位置,由于PWD对应的绝对路径中是用"/“符号,但是在windows系统中只能识别”",所以需要调用replace将"/“替换成”"就可以了

例如:

win32:CONFIG(release, debug | release)
{
	#指定要拷贝的文件目录为工程目录下的libs目录下的所有dll文件,例如工程目录在D:\QT\Test下
	#PWD就为D:/QT/Test,LibFile = D:/QT/Test/libs/*.dll
	LibFile = $$PWD/libs/*.dll
    #将LibFile中的"/"替换为"\"
    LibFile = $$replace(LibFile, /, \\)
	#输出目录也是一样要讲"/"替换为"\"
    OutLibFile = ../App/*.dll
    OutLibFile = $$replace(OutLibFile, /, \\)

    QMAKE_PRE_LINK += copy  $$LibFile $$OutLibFile
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值