您好,欢迎来到五一七教育网。
搜索
您的当前位置:首页Mac下Qt程序发布的方法

Mac下Qt程序发布的方法

来源:五一七教育网
 ----------------------------------------------------------------------------------------------------------------------------------------------

Mac下Qt程序发布以及编译环境需要注意的问题

一、 编译工程提示找不到头文件的问题。

默认情况下Qt程序会加入QtGui和QtCore Frameworks连接路径,如果使用了Qt其它Frameworks或者第三方dylib,需要相应的添加到xcode的工程中。

方法1:如果使用了第三方库文件,包括Qt除了上面的两个库以外,需要在External Frameworks and Libraries右键->Add->External Frameworks...加入使用的第三方库文件或Frameworks。

方法2:打开qmake出来的工程文件xxx.pro,添加代码QT += core gui phonon,两个库之间用单个空格分开,通过这个pro文件生成的xcode工程会将添加相应的Qt Frameworks。

二、 本机能正常运行程序,其它电脑不能运行的问题。

创建工程时,程序所有用到的Frameworks和dylib文件都是连接到本机中的文件,其它电脑没有安装这些Frameworks和dylib当然不能运行程序,具体解决办法:

1. 添加所有用到的Frameworks和dylib到app程序包中:

方法1:右键Targets -> Add -> New Build Phase -> New Copy Files Build Phase,然后修改Destination为Frameworks,Path可以不填,关闭。将External Frameworks and Libraries 目录下的所有内容拷贝到我们刚刚创建的Copy File目录下。编译后,在程序包的内容中就会出现文件夹Frameworks,里面含有程序将会使用到的所有Frameworks和dylib。

方法2:手动添加,右键编程生成的app -> 显示包内容 -> Contents -> 新建文件夹 ->Frameworks,然后将我们用到的所有Frameworks拷贝到这个文件夹中。

----------------------------------------------------------------------------------------------------------------------------------------------

2. 修改app连接路径

方法1:使用苹果提供的命令:install_name_tool -change修改指定程序包中指定Frameworks的路径。具体使用方法:

install_name_tool -change /usr/local/lib/lib01.dylib @loader_path/../dylib/lib01.dylib

\"yourapp.app/Contents/MacOS/yourapp\"

重复该命令来修改所有Frameworks和dylib的路径。

方法2:使用工具macdeployqt \"yourapp.app/Contents/MacOS/yourapp\"批处理所有的Frameworks和dylib,注意:所有的Frameworks和dylib都需要放到Frameworks目录下。

三、 生成最终的压缩包

xcode装了之后,带有一个macdeployqt的程序。通过运行该命令即可生成一个.dmg的压缩包,也就是最终的发布程序包。

macdeployqt app-bundle [options]

例:macdeployqt /Users/apple/Desktop/MyTcpServer/MyTcpServer.app -dmg

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 517ttc.cn 版权所有 赣ICP备2024042791号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务