MacOS:使用install_name_tool将@rpath更改为@executable_path - app crash

时间:2017-12-04 17:56:27

标签: xcode macos qt

我在QT5.6中使用QT Creator并拥有一个成功编译的应用程序,在我的Mac上运行没有问题。 要在另一台Mac上运行此应用,请使用:

otool -L eMark-qt.app/Contents/MacOS/eMark-qt

结果:

...
@rpath/QtWidgets.framework/Versions/5/QtWidgets (compatibility version 5.6.0, current version 5.6.3)
@rpath/QtGui.framework/Versions/5/QtGui (compatibility version 5.6.0, current version 5.6.3)
...

现在我已将QtGui.framework复制到eMark.app

cp -RL /Users/rumhocker/Qt5.6.3/5.6.3/clang_64/lib/QtGui.framework /Users/Rumhocker/Downloads/eMark-master/eMark-Qt.app/Contents/Frameworks
运行后

install_name_tool -id @executable_path/../Framework/QtGui.framework/Versions/5/QtGui eMark-Qt.app/Contents/Frameworks/QtGui.framework/Versions/5/QtGui

install_name_tool -change @rpath/QtGui.framework/Versions/5/QtGui @executable_path/../Frameworks/QtGui.framework/Versions/5/QtGui eMark-Qt.app/Contents/MacOS/eMark-Qt

我的Mac上的应用程序崩溃。 我不知道为什么。我的命令是对的吗?关于我的问题的任何想法? 在这里你可以找到error.log https://pastebin.com/nYC3dLjR

请查看第71行,QtGui.framework有新的位置。在第70,72,73行中,您可以看到我此时不会使用Install_name_tool触及其他框架。

0 个答案:

没有答案