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

相关推荐
binderIPC19 分钟前
macos环境下FFmpeg打包成.so文件
macos·ffmpeg·音视频
binderIPC22 分钟前
macos的FFmpeg环境搭建
macos·ffmpeg·音视频
王中王程序猿21 小时前
Mac IDA动态调试Android应用so文件
macos
xifangge20251 小时前
[报错] SpringBoot 启动报错:Port 8080 was already in use 完美解决(Windows/Mac/Linux)
java·windows·spring boot·macos·错误解决
雪域迷影21 小时前
MacOS下源码安装SDL3并运行hello.c示例程序
c语言·开发语言·macos·sdl3
阿捏利1 天前
详解Mach-O(五)Mach-O LC_SYMTAB
macos·ios·c/c++·mach-o
2601_949146531 天前
Swift语音通知接口集成手册:iOS/macOS开发者如何调用语音API
macos·ios·swift
爱喝水的木子1 天前
新mac入手装的一些好用的提高效率的软件
macos
懒狗不更新1 天前
mac m2安装 aria2 以及对应图形化界面 AriaNg 文件损坏
macos
逆向APP2 天前
mac端为claude code配置ida mcp
macos·claude