mac m1: bad cpu type in executable

事件起因:

最近淘了一台mac电脑,但是要使用grpc的protoc的时候却显示了如下的提示:

复制代码
zsh: bad CPU type in executable

本来以为是因为protoc不是为aarch 64构建的因此无法运行,因为文件目录确实是在x86_64文件夹下。于是就去下载aarch的protoc,结果还是一样的问题。

解决方案:

由于当macOS尝试运行不是Apple silicon构建的应用程序时,就会自动将应用程序转换成Apple Silicon,但是在终端中貌似没有对应的作用。如果要运行以前旧的x86_64的二进制文件,需要手动指定arch,这时候我们直接指定zsh为旧的x86_64

复制代码
arch -x86_64 zsh

这个命令可以将现有的zsh终端切换到x86_64,这样执行后,原先的x86_64应用就可以使用了。

希望未来 Apple silicon的芯片和应用程序能够更好地互相适配把。

相关推荐
Lvan的前端笔记4 小时前
python:Mac 系统 uv 完整安装+入门实战
python·macos·uv
pop_xiaoli6 小时前
【iOS】离屏渲染
macos·ios·objective-c·cocoa
colman wang2 天前
Git指令(Mac)
git·macos
酷虎软件3 天前
分享链接+视频音频文案提取 API 接口文档
ide·macos·xcode
Hyyy3 天前
为什么 macOS 应用一换 Bundle ID,之前授予的权限就全失效了?
macos·electron
p似笑非笑3 天前
实战验证——把 SDK 塞进一个 macOS 原生 Agent 应用
macos
p似笑非笑3 天前
在Mac上完美配置VSCode的C/C++开发环境(GCC/G++详细教程)
c语言·vscode·macos
韦胖漫谈IT3 天前
Apple M3 Max 与 Apple M5 Max 对比:本地算力的新旧王者之争
网络·人工智能·macos·transformer
greasyfork4 天前
多种数据库管理混乱?Navicat Premium 17 for Mac 统一解决
数据库·mysql·macos·mac
碎_浪4 天前
Mac 壁纸被 MDM 锁住?我做了个 2MB 的开源方案
macos·开源·swift