将下方代码复制到.pro文件中,即可在自定义库文件编译完后自动将生成的dll复制到Qt和QtCreator目录中:
#将dll复制到Qt和QtCreator的plugins目录中
CONFIG(debug, debug|release) {
src_dll = $$OUT_PWD/debug/*.dll
src_lib = $$OUT_PWD/debug/*.lib
} else {
src_dll = $$OUT_PWD/release/*.dll
src_lib = $$OUT_PWD/release/*.lib
}
dst_qtcreator = C:\Qt\qtcreator-4.9.0-rc1\bin\plugins\designer
dst_qt = C:\Qt\Qt5.12.2\5.12.2\msvc2017_64\plugins\designer#$$[QT_INSTALL_PLUGINS]/designer
dst_include = $$PWD/../include
win32 {
#必须把“/”替换成“\\”,否则不会copy命令会出错
src_dll ~= s,/,\\,g
src_lib ~= s,/,\\,g
dst_qtcreator ~= s,/,\\,g
dst_qt ~= s,/,\\,g
dst_include ~= s,/,\\,g
#在win下一行命令行处理多个命令用“&”符号连接
QMAKE_POST_LINK += copy $$src_dll $$dst_qt &
QMAKE_POST_LINK += copy $$src_dll $$dst_qtcreator &
QMAKE_POST_LINK += copy $$src_dll $$dst_include &
QMAKE_POST_LINK += copy $$src_lib $$dst_include
message($$QMAKE_POST_LINK)
}
unix {
#在linux下一行命令行处理多个命令用“;”符号连接
QMAKE_POST_LINK += cp -rf $$src_dll $$dst_qt ;
QMAKE_POST_LINK += cp -rf $$src_dll $$dst_qtcreator ;
QMAKE_POST_LINK += cp -rf $$src_dll $$dst_include ;
QMAKE_POST_LINK += cp -rf $$src_lib $$dst_include
}