Aba*_*bai 6 deployment macos homebrew qt bundle
我正在尝试使用macdeployqt部署应用程序.所有Qt框架都被正确复制到应用程序包中.我遇到的问题是macdeployqt对最初驻留在/ usr/local/lib中的复制框架没有写权限.这是因为我已经使用自制软件安装了qt,这似乎使安装一切都只读.我的问题是,是否有更好的方法来解决这个问题,然后手动更改/ usr/local/lib中qt库的所有权限,以便我可以在qt .pro项目中使用macdeployqt.(我不想手动使用macdeployqt和sudo等)
我问的原因是因为我在项目中使用了许多第三方库(它们被复制好等等),我需要经常通过自制软件更新,因此必须重做更改它们的权限.
提前致谢!
以防万一有人发现这个旧帖子寻找有关 macdeployqt 的信息:
使用脚本执行 macdeployqt 优先于在 .pro 文件中编写 macdeployqt 命令脚本。这将允许您动态更改文件的权限。
这是我在我的一个应用程序中使用的脚本的[片段]:
https://bugreports.qt-project.org/browse/QTBUG-23268
如果您使用的是 Windows 并且没有 bash,则可以使用 perl 或 python。上面引用的脚本会动态修改文件以解决错误 - 您可以在此处放置任何您想要的内容,包括更改文件的权限。
使用脚本还意味着您以后可以灵活地添加命令来进行代码签名、打包或您需要的任何其他操作。
Qt .pro“脚本语言”实际上在底层生成 Makefile 命令,如果您想完成与路径和文件集相关的部署任务,它可能会非常晦涩难懂。
此外,您还需要创建一个额外的目标或将其包含到您的构建目标中 - 无论哪种方式,构建过程都会变得更加复杂并且更容易出错。
免责声明:作为 Nokia/Trolltech 的高级工程师,我在 Qt 上工作了 8 年,并且还使用 Qt 发布了一个商业跨平台应用程序。