首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >otool正在引用旧版本的libffi。

otool正在引用旧版本的libffi。
EN

Stack Overflow用户
提问于 2022-04-08 00:33:29
回答 1查看 172关注 0票数 0

我试图在MacOS10.15.7上编译一个R包(用Linux编译)。

在安装结束时,我遇到了一个奇怪的问题,与llvm-objdump-mp-7.0引用/opt/local/bin/libffi.7.dylib有关。

问题似乎在于我的Xcode/自制工具集在某种程度上不同步。

我可以用

代码语言:javascript
复制
$otool --version
llvm-otool(1): Apple Inc. version cctools-921
dyld: Library not loaded: /opt/local/lib/libffi.7.dylib
  Referenced from: /opt/local/libexec/llvm-7.0/lib/libLLVM.dylib
  Reason: image not found
fatal error: otool: fatal error in /opt/local/bin/llvm-objdump-mp-7.0

然而,

代码语言:javascript
复制
$ ls /opt/local/lib/libffi*
/opt/local/lib/libffi.8.dylib   /opt/local/lib/libffi.dylib
/opt/local/lib/libffi.a

我运行过brew update,其次是brew upgradebrew reinstall libffibrew reinstall llvm

我已经将我的Xcode升级到12.4,并安装了命令行工具。

我遗漏了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-12 14:11:43

我之前肯定已经安装了一个较早版本的llvm,它将其命令放在/usr/local/bin中,然后在/usr/local/bin中屏蔽/usr/bin/otool的系统版本。

当前的llvm公式将更新后的工具放在/usr/local/opt/llvm/bin中,以避免掩盖Xcode版本。然而,较早的版本仍然生活在/usr/local/bin中。

以下命令似乎解决了我的问题。

代码语言:javascript
复制
sudo rm /opt/local/bin/otool
sudo rm /opt/local/bin/llvm-otool
sudo rm /opt/local/bin/*-mp-7.0

otools现在正在正确地找到Xcode版本,因此我再次启动并运行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71790401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档