Ask

"zsh: bad CPU type in executable" and "mach-o file, but is an incompatible architecture" — what is the Mac actually telling me?

Same underlying condition, two different layers noticing it.

"bad CPU type in executable" comes from the system trying to launch a program. You asked to run an Intel binary and there is no translation available for it — usually because Rosetta is not installed.

"mach-o file, but is an incompatible architecture" comes from something trying to load a library into an already-running process. This one cannot be solved by translation at all: a process is either Intel or ARM for its whole life, and you cannot load an Intel library into an ARM process. The error politely names both sides — have 'x86_64', need 'arm64' means the file on disk is Intel and the process asking for it is ARM.

That second one is the one that bites Python users, because a native ARM Python is trying to import a package that shipped an Intel binary. There is no flag that fixes it. The package has to be reinstalled for the right architecture, or the whole environment has to run as Intel.

29 · in/apple-silicon ·

Homebrew keeps complaining about my Command Line Tools after every macOS update — why does this keep coming back?

Question 2: full Xcode contains everything the Command Line Tools do, plus the IDE, simulators and platform SDKs. You do not need both, and having both is a common source of confusion because xcode-select decides which one everything uses.

xcode-select -p

If it prints a path inside Xcode.app, your builds are using Xcode's toolchain. If it prints /Library/Developer/CommandLineTools, they are using the standalone package. Either works for Homebrew; what breaks things is pointing at one that is not there any more, which happens when somebody deletes Xcode and the setting still refers to it.

Unless you build iOS or Mac apps, the standalone tools are all you need and they are a fraction of the size. If you have Xcode for something else, keep it and skip the standalone package rather than maintaining two.

24 · in/apple-silicon ·