1

我正在尝试为 OSX 发布一个应用程序,但每次有人在他们的机器上运行该应用程序时,他们都会得到:

Dyld Error Message:
  Library not loaded: /usr/lib/libusb-1.0.2.dylib
  Referenced from: /Users/USER/Desktop/____.app/Contents/MacOS/____
  Reason: image not found

这篇文章中的人建议这是使用Dyld 构建包的路径:Library not Loaded Error Mac OS 但即使我构建没有前缀的应用程序,我仍然遇到问题。

然后我尝试使用以下方法构建:

./configure --disable-dependency-tracking --disable-static --prefix=@executable_path/../Frameworks/

但这给出了无效路径的错误。我在包中包含 dylib。我必须使用 libusb 1.0.16RC10,因为最新的稳定版本中存在一个错误,每次扫描设备时都会在短时间内破坏 MBP 上的鼠标和键盘功能。

请告诉我有一种方法可以包含它,每次使用都不必编译自己的 libUSB。

4

1 回答 1

2

因此,如果您将 .dylib 包含在框架目录中,现在您只需运行“ install_name_tool”以将您的应用程序指向应用程序包中的该 dylib,而不是“ /usr/lib”。

为此,请在编译和链接完成后添加“运行脚本”构建步骤。在这个构建阶段,脚本将非常简单:

install_name_tool -id @executable_path/../Frameworks/libusb-1.0.2.dylib path/to/your/project/libusb-1.0.2.dylib

我正在看的教程可以在这里找到。我希望这可以帮助你!

于 2013-05-25T06:26:13.653 回答