OSXCross is a macOS cross-compilation toolchain for Linux and BSD systems that enables developers to build macOS binaries from non-Apple hosts.
The tool solves the problem of compiling for macOS without access to Apple hardware by combining a host compiler, a packaged macOS SDK, Darwin-compatible binary utilities, and a compiler wrapper. It works by installing the SDK into a target directory, preparing the tools and dependencies for the selected build flavor, and compiling an OSXCross wrapper that automatically configures the target triple, SDK sysroot, deployment target, and linker for macOS. Three build flavors are available: stable uses cctools 986 and ld64 711 for proven reliability; latest uses newer versions of cctools and ld64 but requires additional dependencies and longer build time; and llvm uses LLVM tools and ld64.lld instead, offering the fastest build and support for arm64, arm64e, and x86_64 targets, though it does not support i386 or x86_64h.
Developers should choose this tool if they need to cross-compile for macOS from Linux or BSD hosts. It suits projects targeting multiple Apple architectures and provides optional scripts to build upstream LLVM/Clang, Apple Clang, GCC variants with ARM64 support, and compiler-rt. The project includes a minimal MacPorts package manager and CMake integration with architecture-specific launchers and toolchain files for streamlined builds. Host support spans x86, x86_64, ARM, and AArch64 architectures, while target support covers arm64, arm64e, x86_64, and i386.
Development activity shows consistent maintenance with regular updates to the toolchain components and build infrastructure. The project maintains multiple build flavor options reflecting different stability and feature trade-offs rather than a single approach. Documentation is comprehensive, with separate guides covering SDK generation, build dependencies, Clang compilation, GCC variants, compiler-rt, MacPorts, and CMake integration. The codebase includes platform-specific dependency installation tooling and supports a range of Linux distributions and BSD variants.