【发布时间】:2013-05-25 04:34:44
【问题描述】:
我正在尝试为 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。
【问题讨论】:
-
“
libusb-1.0.2.dylib”和“libusb-1.0.16RC10.dylib”不是一回事吧? -
当我编译从最新的 git 下载的 1.0.16 代码时,它会生成名为 1.0.2 的文件
-
您是否将 libusb.dylib 复制到已编译的应用程序包中?
-
是的,包含在framework目录下的app包中。
-
这是一个看似困难的问题,我建议阅读一些动态链接器教程,特别关注@rpath
标签: objective-c xcode macos libusb dyld