M1芯片是否无法执行Nix Build命令?出现aarch64-darwin缺失错误
问题1:aarch64-darwin是否指代64位架构
aarch64-darwin是Nix生态中对设备系统和架构的标准命名规则:
aarch64代指64位ARM架构,属于64位架构的一种,你所用的M1芯片完全符合这个架构定义darwin代指macOS的内核,所以整个标识符特指「搭载ARM架构64位芯片的macOS设备」,正好对应你的设备属性。
问题2:M1芯片是否不支持执行该Nix Build命令
你的M1芯片本身完全支持运行Nix构建命令,本次报错和硬件无关,是你调用的Plutus库的Nix配置文件没有适配aarch64-darwin架构,没有定义对应架构的构建属性,所以Nix在查找对应属性时报错。
可行的解决办法
你可以指定使用x86_64架构模拟运行构建,修改后的命令如下:
nix build --system x86_64-darwin -f default.nix plutus.haskell.packages.plutus-core.components.library
如果执行后还是有兼容性问题,可以打开访达-应用程序-实用工具,右键点击「终端」选择「显示简介」,勾选「使用Rosetta打开」,重启终端后执行原始构建命令即可。
内容的提问来源于stack exchange,提问作者Kaleb Amarante
相关产品推荐
相关产品推荐

