You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

启用SIP后RPATH配置失效,加载MATLAB Runtime库失败求助

关于SIP启用后@rpath配置失败的问题

我的理解确认

  • SIP启用时DYLD_LIBRARY_PATH会被忽略,因此改用@rpath方案
  • 可给二进制添加多个@rpath条目,系统会按顺序尝试查找库文件
  • RPATH会从加载器传播到其加载的库及库的依赖项

以上理解是否正确?

当前遇到的问题

辅助二进制grasp需要访问Bundle外部的MATLAB Runtime库,所有RPATH配置尝试均失败,具体信息如下:

SIP未启用时的可行环境变量

DYLD_LIBRARY_PATH="."
DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/Applications/MATLAB/MATLAB_Runtime/v911/runtime/maci64"
DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/Applications/MATLAB/MATLAB_Runtime/v911/bin/maci64"
DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/Applications/MATLAB/MATLAB_Runtime/v911/sys/os/maci64"

添加RPATH的命令

install_name_tool -add_rpath <absolute path> grasp

otool检查结果

查看依赖关系:

otool -L grasp.app/Contents/MacOS/grasp
    @rpath/libmwlaunchermain.dylib (compatibility version 0.0.0, current version 0.0.0)

查看RPATH条目:

otool -l grasp.app/Contents/MacOS/grasp | grep -B 1 -A 2 LC_RPATH
Load command 19
          cmd LC_RPATH
      cmdsize 32
         path @loader_path (offset 12)      <-- 原始二进制自带
--
--
Load command 20
          cmd LC_RPATH
      cmdsize 32
         path @loader_path/\. (offset 12)      <-- 原始二进制自带
--
--
Load command 24
          cmd LC_RPATH
      cmdsize 64
         path /Applications/MATLAB/MATLAB_Runtime/v911/bin/maci64 (offset 12)

运行时错误

dyld: Library not loaded: @rpath/libmwlaunchermain.dylib
  Referenced from: grasp.app/Contents/MacOS/grasp
  Reason: image not found

疑问与求助

我原本预期@rpath/libmwlaunchermain.dylib会被解析为/Applications/MATLAB/MATLAB_Runtime/v911/bin/maci64/libmwlaunchermain.dylib,但实际加载失败。是否因为grasp是辅助二进制导致的?该如何调试这个问题?

Bundle结构

Grasp4Mac.app
    Contents
        MacOS/mylauncher  <-- 负责启动grasp.app
    Resources
        Grasp/graps.app    <-- 内嵌Bundle
            Contents
                MacOS
                    applauncher <-- 主程序
                    prelaunch
                    grasp  <-- 调用外部库的辅助二进制

内容的提问来源于stack exchange,提问作者linus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 05:37:55