Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos dylib:未找到图像,但路径看起来正确_Macos_Dylib_Launchd - Fatal编程技术网

Macos dylib:未找到图像,但路径看起来正确

Macos dylib:未找到图像,但路径看起来正确,macos,dylib,launchd,Macos,Dylib,Launchd,在一台计算机上,当OSX启动守护程序无法加载MailCore框架时,它将崩溃。但是,框架位于预期位置,并且守护进程在我的计算机以及其他一些计算机上正常运行。有人知道“未找到图像”错误的原因吗?或者如何解决此问题 MailCore库安装在: /Library/Application Support/ArgusLink/bin/MailCore.framework/Versions/A/MailCore 尝试加载的二进制文件安装在(并通过launchd运行): /Library/Applicatio

在一台计算机上,当OSX启动守护程序无法加载MailCore框架时,它将崩溃。但是,框架位于预期位置,并且守护进程在我的计算机以及其他一些计算机上正常运行。有人知道“未找到图像”错误的原因吗?或者如何解决此问题

MailCore库安装在:

/Library/Application Support/ArgusLink/bin/MailCore.framework/Versions/A/MailCore

尝试加载的二进制文件安装在(并通过launchd运行):

/Library/Application Support/ArgusLink/bin/arguslinkd

MailCore的安装名称为:

@loader\u path/MailCore.framework/Versions/A/MailCore

MailCore是为i386体系结构构建的。守护进程崩溃的计算机正在运行10.6.8,我已经用它成功地进行了测试

完整事故报告:

Process:         arguslinkd [349]
Path:            /Library/Application Support/ArgusLink/bin/arguslinkd
Identifier:      arguslinkd
Version:         ??? (???)
Code Type:       X86 (Native)
Parent Process:  launchd [1]

Date/Time:       2011-11-22 08:58:30.117 -0500
OS Version:      Mac OS X 10.6.8 (10K549)
Report Version:  6

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000
Crashed Thread:  0

Dyld Error Message:
  Library not loaded: @loader_path/MailCore.framework/Versions/A/MailCore
  Referenced from: /Library/Application Support/ArgusLink/bin/arguslinkd
  Reason: image not found

Binary Images:
0x8fe00000 - 0x8fe4162b  dyld 132.1 (???) <A4F6ADCC-6448-37B4-ED6C-ABB2CD06F448>
   /usr/lib/dyld
进程:arguslinkd[349]
路径:/Library/Application Support/ArgusLink/bin/arguslinkd
标识符:arguslinkd
版本:???(???)
代码类型:X86(本机)
父进程:已启动[1]
日期/时间:2011-11-22 08:58:30.117-0500
操作系统版本:Mac OS X 10.6.8(10K549)
报告版本:6
异常类型:EXC_断点(SIGTRAP)
异常代码:0x0000000000000002,0x0000000000000000
崩溃线程:0
Dyld错误消息:
未加载库:@loader\u path/MailCore.framework/Versions/A/MailCore
引用自:/Library/Application Support/ArgusLink/bin/arguslinkd
原因:找不到图像
二进制图像:
0x8fe00000-0x8fe4162b dyld 132.1(?)
/usr/lib/dyld
根据上的建议,我转而使用
@rpath
而不是
@loader\u path
,尽管我有点不清楚为什么这可能解决了这个问题


请注意,对于
运行路径搜索路径
值(库与加载程序可执行文件位于同一目录中),我必须使用
@rpath/
而不是
@rpath
),否则我将继续得到“未找到库”错误。

您应该将框架添加到“嵌入的二进制文件”而不是“链接的框架和库”(尽管当您将其添加到嵌入的二进制文件时,它会将自身添加到链接的框架中)。

如果您运行的是10.6.8,它不应该为x86\u 64构建吗?(这似乎不是目前的问题:-)该应用程序依赖于无法轻松为x86_64构建的库(例如较旧的视频内容),因此我们使用i386作为唯一的体系结构。但不,我认为这不是问题所在。