Formula

llvm

23.1.2

Next-gen compiler infrastructure

Install

brew install llvm

Details

Sources

Supported platforms

ArchitecturePlatformsVersionDownload
Apple SiliconGolden Gate23.1.2File
SHA-2560fb59fe5a6c704c45a0f5278cf6afce04edf35d04a13b15e9115fdef822ece60
Apple SiliconTahoe23.1.2File
SHA-256bc2ff4fa3f9359d3b8b49d70cb1782f9b63040d050ca1316c047d65ed799ec6e
Apple SiliconSequoia23.1.2File
SHA-25663a5f733263b561b704165fad06c36de11bedddcdc1a3963da7dcda361ea941d
ARM64Linux23.1.2File
SHA-256c7d3a48cde4bbe606a9b2bd5d11962852bee556361cb08171818d93b5d4a9733
x86_64Linux23.1.2File
SHA-256a28688de4ab686346a45760c4f0ca00810ed5f8a563f227c84d9cfa5d379f749

Dependencies

  • zstd
  • z3

Package data

Caveats

CLANG_CONFIG_FILE_SYSTEM_DIR: $HOMEBREW_PREFIX/etc/clang
CLANG_CONFIG_FILE_USER_DIR:   ~/.config/clang

LLD and LLDB are now provided in separate formulae:
  brew install lld
  brew install lldb

Z3 solver support will be removed in LLVM 24 as it is unsupported upstream,
see https://github.com/llvm/llvm-project/pull/205370

Using `clang`, `clang++`, etc., requires a CLT installation at `/Library/Developer/CommandLineTools`.
If you don't want to install the CLT, you can write appropriate configuration files pointing to your
SDK at ~/.config/clang.

To use the bundled libunwind please use the following LDFLAGS:
  LDFLAGS="-L$HOMEBREW_PREFIX/opt/llvm/lib/unwind -lunwind"

To use the bundled libc++ please use the following LDFLAGS:
  LDFLAGS="-L$HOMEBREW_PREFIX/opt/llvm/lib/c++ -L$HOMEBREW_PREFIX/opt/llvm/lib/unwind -lunwind"
Features newer than system libc++ will require the following define to enable
(support for this may be removed in a future major LLVM release):
  CPPFLAGS="-D_LIBCPP_DISABLE_AVAILABILITY"

NOTE: You probably want to use the libunwind and libc++ provided by macOS unless you know what you're doing.