qmake:如何将 .dll/.so 复制到输出目录?
我有一个构建 dll/共享库的 Qt 项目和另一个测试该库的 Qt 项目。
有什么好方法让 qmake 将 dll 复制到测试项目的输出文件夹吗?
I have a Qt-project that builds a dll/shared-library and another Qt-project that tests the library.
Is there any good way to have qmake copy the dll to the output-folder of the test-project?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
将其添加到您的 pro 文件中:
Add this to your pro file:
这适用于 QextSerialPort 库。支持 Qt 的
debug_and_release
模式。QMAKE_POST_LINK
也可以工作,但如果您尝试立即运行应用程序,则会抛出错误:那么您的 .dll 将被复制得太晚。QMAKE_PRE_LINK
确实及时复制了它。This works, for the QextSerialPort library. Supports Qt's
debug_and_release
mode.QMAKE_POST_LINK
also works, but will throw an error if you're trying to run the app immediately: then your .dll will be copied too late.QMAKE_PRE_LINK
does copy it in time.我使用安装,像这样。( qmake 文档)
I use INSTALLS, like so. (qmake documentation)
这可能不是一个“好”方法,但它可能会起作用。
QMAKE_POST_LINK += 一些复制 dll 的 shell 命令
This may not be a 'good' way but it may do the trick.
QMAKE_POST_LINK += some shell command to copy the dll
您可以使用
DESTDIR
关键字,如 Qt 4 中的 qmake 文件文档。You can use
DESTDIR
keyword as it is said in qmake files documetation in Qt 4.