将项目的.pro文件添加到以下行:
QMAKE_POST_LINK += $(COPY_FILE) "$${DESTDIR_TARGET}$${TARGET_EXT}" "C:\Destination\Directory\For Created DLL"
或者,如果QMAKE解析创建DESTDIR的行,则以前项目中未定义DESTDIR_TARGET或MakeFile不存在。
QMAKE_POST_LINK += $(COPY_FILE) "$${OUT_PWD}/$${TARGET}$${TARGET_EXT}" "C:\Destination\Directory\For Created DLL"
如果$${TARGET_EXT}被空字符串替换,请在上面的行中使用固定的.dll代替$${TARGET_EXT}。
当然也可以移动 DLL,而不是使用以下3行之一复制它:
QMAKE_POST_LINK += $(MOVE) "$${DESTDIR_TARGET}$${TARGET_EXT}" "C:\Destination\Directory\For Created DLL"
QMAKE_POST_LINK += $(MOVE) "$${OUT_PWD}/$${TARGET}$${TARGET_EXT}" "C:\Destination\Directory\For Created DLL"
QMAKE_POST_LINK += $(MOVE) "$${OUT_PWD}/$${TARGET}.dll" "C:\Destination\Directory\For Created DLL"
但是在Windows上还有QMAKE变量DLLDESTDIR直接在.pro文件中指定一个目录,在链接后应该将创建的DLL复制到该目录中。
DLLDESTDIR="C:\Destination\Directory\For Created DLL"
注意:我无法测试此处为Windows编写的任何内容。我只能确认上面写的所有内容都不适用于Linux,因为与Windows相比,Linux上的库管理完全不同。