MacOS 遇到 dyld: Library not loade

2023-02-28  本文已影响0人  wind_sky

问题描述

在 macOS 平台执行二进制程序时,遇到 dyld: Library not loaded: xxx.dylib 错误

问题原因

二进制中会记录其依赖的动态库地址,如果在对应的地址找不到对应的动态库,则会出现该错误

解决方案

两种解决方案:

  1. 将对应的动态库放到依赖的路径中

  2. 修改dylib 的依赖地址
    1)查看二进制程序依赖地址:

otool -L target_name

2)修改二进制程序依赖地址

install_name_tool -change /usr/local/lib/libA.1.dylib @executable_path/../Frameworks/libA.1.dylib target_name

此处的 target_name 即你要修改的文件。
修改完毕后,再通过otool工具查看,即可看到最新的引用路径。

上一篇 下一篇

猜你喜欢

热点阅读