The article reveals that macOS's /usr/bin/gcc is a real binary, not an alias, that internally dispatches to clang based on its invoked name. The author reverse-engineers the binary to show it checks its own executable name and routes 'gcc' to 'clang', 'llvm-gcc' to 'clang', and 'c++' or 'llvm-g++' to 'clang++'.
Background
macOS has used clang as its default compiler since Xcode 4.2 (2012), replacing GCC entirely while maintaining compatibility through the gcc command name. This article provides a technical deep-dive into how Apple maintains GCC CLI compatibility on macOS.
- Source
- Lobsters
- Published
- Oct 22, 2026 at 02:45 PM
- Score
- 5.0 / 10