将QT Framework添加到我的.app包中
我在关于部署的Qt站点上的文档.我创建了一个名为HTTPClient.app的应用程序
我在Contents下创建了Framework文件夹,并复制了crypto ++和qscintilla以及Qt框架,它看起来像这样:

然后我运行install_name_tool -id -change
DylibFile=libqscintilla2.11.dylib
install_name_tool -id @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName
Run Code Online (Sandbox Code Playgroud)
和crypto ++相同.我对Qt框架进行了以下操作
DylibFile=QtCore.framework/Versions/5/QtCore
install_name_tool -id @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName
DylibFile=QtWidgets.framework/Versions/5/QtWidgets
install_name_tool -id @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName
DylibFile=QtGui.framework/Versions/5/QtGui
install_name_tool -id @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName
DylibFile=QtSql.framework/Versions/5/QtSql
install_name_tool -id @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName
DylibFile=QtNetwork.framework/Versions/5/QtNetwork
install_name_tool -id @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName
Run Code Online (Sandbox Code Playgroud)
现在,当我运行otool时,我得到以下内容:

我得到了加密和qscintilla路径但是Qt框架也不应该遵循相同的模式吗?它仍指向原始路径
install_name_tool通过使用提供的工具macdeployqt(位于Qt安装的bin文件夹中),您可以节省时间,担心如何使用Qt Frameworks .
此工具将复制所需的Qt库并相应地设置路径.所以,假设你的路径中有Qt bin文件夹,你需要做的就是这个: -
macdeployqt HTTPClient.app
请注意,它仅处理Qt框架,因此您仍必须自己处理其他人.