OS X QT App redistributable bundle 部署教程

本文分享了一种简化OS X上QT应用程序的部署方法,包括将动态库编译为dylib,使用macdeployqt工具生成可重分发包,避免手动使用otool/install_name_tool修改库依赖。通过App bundle和Framework的介绍,阐述了制作过程中的注意事项和可能出现的问题,强调使用macdeployqt工具可以更高效地解决依赖问题。
摘要由CSDN通过智能技术生成

大家做 OS X App开发的时候, 应该注意到Apple简洁的应用程序分发方式 - App bundle, 作者摸索后发现QT官方的文档不是很简洁, 照着教程做容易走弯路,  在这里分享一个比较简单的制作方法:

1) QT项目, 动态库编译为dylib, 可执行程序编译为app bundle输出.

2) 拷贝编译出来的动态库到/usr/lib下

3) 使用QT的macdeployqt工具生成可重分发包, 它会帮你将动态链接的QT framework打进App bundle里.

4) 不建议使用 otool/install_name_tool 自己写库依赖. 希望能自己写成功的同学批评指正.

详细讲一下Apple App bundle: App bundle简而言之就是一个目录树结构:

MyApp.app ----- Contents ------- Frameworks                         

                                               ------- MacOs -------- MyApp

                                               ------- Resources

                                               ------- Plugins

                                               ------- Info.plist

Frameworks 目录一般保存 .framework打包形式的动态库, 可以是项目编译出来的, 也可以第三方的库. MacOs保存可执行文件, Resouces下保存资源. 制作完毕的App bundle, 发布后要求可以放在用户的任何目录执行. 

Framework ----- Apple 对程序库独特的打包方式, 目录结构类似于App bundle,  支持单个或多个程序库伞状嵌套, 支持程序库的多版本配置. 具体有

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值