如何在mac系统下,给QT打包

本文详细介绍了在Mac操作系统下,如何使用QT进行应用打包,包括不包含第三方库时的简单打包步骤,以及包含第三方库时的复杂打包流程。涉及到的关键步骤包括使用macdeployqt工具,检查和添加动态库,修改动态库路径,以及最终打包成dmg文件。此外,还提及了在QT中使用dylib动态库的方法,包括头文件的包含和库的自动导入。
摘要由CSDN通过智能技术生成

Mac下QT打包
1. 如果没有包含第三方库
     1.打包成app
         1. qt release编译后
         2. ./macdeployqt xxx.app     // macdeployqt的目录在../Qt/5.15.2/clang_64/binQt的依赖库会自动打包到这个文件里面,把这个app文件拷贝给别人就可以直接运行

     2.打包成dmg的文件
         1. qt release编译后
         2. ./macdeployqt xxx.app -dmg

2. 如果包含第三方库
    1. qt release编译后
    2. 查看一个动态库或应用程序的依赖    otool -L xxx.app/Contents/MacOS/xxx
    3. 执行完此命令后,找到xxx这个编译好的程序右键“打开包内容/Show Package Contents”,然后跳转到bundle的包内部目录里面,切换到“Contents”目录下的Frameworks目录中
   在Frameworks目录中,创建一个目录“xxxx”(自己起的名字)然后把你制作的动态库或第三方的动态库放到这个目录。
    4. 为了发布出去的应用程序不再在/usr/local/lib目录下找对应的动态库。而是在bundle包(目录)中查找。从而用户复制你的bundle到“应用程序”目录即可直接运行。因此你需要修改应用程序记录动态库的路径。修改方法如下:
   install_name_tool -change "libXXXX.1.dylib" "@rpath/xxxx/libXXXX.1.dylib" xxx.app/Contents/MacOS/xxx
    5 ./macdeployqt xxx.app -dmg


其他:
    在QT中如何使用dylib
    1. 将dylib的头文件包含进来
       INCLUDEPATH += "xxxx"    // 头文件的目录位置
    2. 将dylib动态库包含进来
       这里建议使用QT的自动导入工具(对比手动导入和自动导入,发现dylib的名字会变,导致手动加载不了包)
       右击工程,选择添加库,然后按操作来,就完成了,完成后在.pro文件会看到自动添加了配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值