QtApp を OSX 用の .app にビルドするためのシェル スクリプトを準備しています。スクリプトで次のことを行います
qmake MyApp.pro -spec macx-clang CONFIG+=release CONFIG+=x86_64 CONFIG+=qml_debug
make
macdeployqt MyApp/MyApp.app
そして、MyApp.app を取得します。ここまでスゴイ!しかし、ダブルクリックして開くと、次のエラーが表示されます。
You can’t open the application “MyApp.app” because it is not supported on this type of Mac.
この問題の周りを検索しようとしました。Qt からの次の公式リンクに記載されているように、
otool
&に関連するスクリプトにさらにコード行を追加する必要があるようです: http://doc.qt.io/qt-5/osx-deployment.html#macdeployinstall_name_tool
最終的な.appを取得するためにQtの下でどのツールと何が機能するかについての公正な説明ですが、スクリプトに正確に何を入れればよいかわかりません。ビルド後の osx マシン。
質問:
OSX 用の適切な MyApp.app を取得するために、macdeployqt コマンドの後にスクリプトに何を追加すればよいか教えてください。
ところで、MyAppでコマンドを実行otool
すると、次の出力が得られます。
otool -L MyApp.app/Contents/MacOS/MyApp
MyApp.app/Contents/MacOS/MyApp:
@rpath/QtQuick.framework/Versions/5/QtQuick (compatibility version 5.6.0, current version 5.6.1)
@rpath/QtQml.framework/Versions/5/QtQml (compatibility version 5.6.0, current version 5.6.1)
@rpath/QtNetwork.framework/Versions/5/QtNetwork (compatibility version 5.6.0, current version 5.6.1)
@rpath/QtCore.framework/Versions/5/QtCore (compatibility version 5.6.0, current version 5.6.1)
/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
@rpath/QtGui.framework/Versions/5/QtGui (compatibility version 5.6.0, current version 5.6.1)
/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)