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的芯片和应用程序能够更好地互相适配把。

相关推荐
阿捏利8 小时前
详解Mach-O(十四)Mach-O __DATA
macos·ios·c/c++·mach-o
qinaoaini8 小时前
[golang][MAC]Go环境搭建+VsCode配置
vscode·macos·golang
追夢秋陽10 小时前
Cocoa 使用NSCollectionView显示列表,数据不足布局异常处理
macos·objective-c·cocoa·swift·collectionview
was17212 小时前
mac 下文件及文本命令行检索方案
macos·命令行工具·文本检索·文件检索
火车头-11014 小时前
MacBook Air M4 安装JvisualVM
spring boot·macos·visualvm
有趣的杰克15 小时前
macOS 实战:用 Swift + AppleScript 实现全局快捷键直达 ChatGPT / Claude / Gemini
macos·chatgpt
❀͜͡傀儡师15 小时前
macOS 镜像下载
macos
ELI_He99915 小时前
老macos安装openclaw固定brew版本
macos
xiaoliuliu1234516 小时前
MavenRunHelper.jar 使用步骤详解(附Maven命令执行与main方法运行)
macos
追夢秋陽2 天前
MacOS app打包Dmg线下分发测试及公证shell脚本
macos·shell·dmg·cocoa打包·打包脚本