提问人:Simon 提问时间:3/1/2022 更新时间:3/1/2022 访问量:1683
Truffle 无法在 Mac M1 上安装
Truffle failing to install on a Mac M1
问:
我正在尝试在我的 mac M1 上安装 Truffle。
我首先按照宠物店教程中松露网站上的说明成功安装了节点,但随后出现此错误......
sudo npm install -g truffle
...
npm ERR! xcrun: error: unable to load libxcrun (dlopen(/Library/Developer/CommandLineTools/usr/lib/libxcrun.dylib, 0x0005): tried: '/Library/Developer/CommandLineTools/usr/lib/libxcrun.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e')), '/usr/lib/libxcrun.dylib' (no such file)).
我做了一些研究,并被指出要尝试在自制软件中尝试它。由于我的 M1 芯片,我不得不首先更新自制软件,我成功地做到了。但我仍然得到似乎是相同或类似的错误......
/opt/homebrew/bin/brew install truffle
...
xcrun: error: unable to load libxcrun (dlopen(/Library/Developer/CommandLineTools/usr/lib/libxcrun.dylib, 0x0005): tried: '/Library/Developer/CommandLineTools/usr/lib/libxcrun.dylib' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e')), '/usr/lib/libxcrun.dylib' (no such file)).
truffle: The x86_64 architecture is required for this software.
我在网上找不到太多关于这个的信息。
这是否意味着 truffle 只能在英特尔芯片上运行,而我需要使用像 rosetta 这样的东西?
答:
5赞
Simon
3/1/2022
#1
好吧,所以我终于想通了,并想在这里为后代发帖。
问题是我在 M1 Mac 上安装的 xcode 命令行工具的版本。我不知道怎么回事,但这是一个过时的版本。解决方法是删除命令行工具并重新安装它们。我认为(我不能肯定地说)这用 M1/Arm 版本取代了它们,然后所需的编译工具就位了。
要进行更新,我按照此 Apple 开发者论坛帖子中的步骤操作 https://developer.apple.com/forums/thread/694283
基本上。。。
垃圾现有文件夹
sudo rm -rf /Library/Developer/CommandLineTools
重新安装
sudo Xcode-select --install
做完这些后,我重新运行了
sudo npm install -g truffle
它成功完成(尽管有一堆审计警告)
评论
0赞
Sekomer
11/12/2023
奇怪,灵活,但还好......在我的情况下,这是唯一真正的解决方案
评论