diff --git a/README.md b/README.md index f73bb247d2..5c1ec0ee93 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ Ensure you have the required dependencies: * CMake >= 3.15 * System C/C++ Toolchain - * LLVM, Clang, LLD development libraries, version 21.x, compiled with the + * LLVM, Clang, LLD development libraries, version 22.x, compiled with the same system C/C++ toolchain. - If the system package manager lacks these libraries, or has them misconfigured, see below for how to build them from source. @@ -257,15 +257,15 @@ that you have **no** trailing slash (`/` or `\`) at the end of the Install [CMake](https://cmake.org/), version 3.20.0 or newer. -[Download LLVM, Clang, and LLD sources](https://releases.llvm.org/download.html#21.0.0) +[Download LLVM, Clang, and LLD sources](https://releases.llvm.org/download.html#22.0.0) The downloads from llvm lead to the github release pages, where the source's -will be listed as : `llvm-21.X.X.src.tar.xz`, `clang-21.X.X.src.tar.xz`, -`lld-21.X.X.src.tar.xz`. Unzip each to their own directory. Ensure no +will be listed as : `llvm-22.X.X.src.tar.xz`, `clang-22.X.X.src.tar.xz`, +`lld-22.X.X.src.tar.xz`. Unzip each to their own directory. Ensure no directories have spaces in them. For example: - * `C:\Users\Andy\llvm-21.0.0.src` - * `C:\Users\Andy\clang-21.0.0.src` - * `C:\Users\Andy\lld-21.0.0.src` + * `C:\Users\Andy\llvm-22.0.0.src` + * `C:\Users\Andy\clang-22.0.0.src` + * `C:\Users\Andy\lld-22.0.0.src` Install [Build Tools for Visual Studio 2019](https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019). @@ -298,9 +298,9 @@ Using the start menu, run **x64 Native Tools Command Prompt for VS 2019** and ex ##### Release Mode ```bat -mkdir C:\Users\Andy\llvm-21.0.0.src\build-release -cd C:\Users\Andy\llvm-21.0.0.src\build-release -"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\Andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-release-mt -DCMAKE_PREFIX_PATH=C:\Users\Andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-release-mt - +mkdir C:\Users\Andy\llvm-22.0.0.src\build-release +cd C:\Users\Andy\llvm-22.0.0.src\build-release +"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\Andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-release-mt -DCMAKE_PREFIX_PATH=C:\Users\Andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-release-mt - DLLVM_ENABLE_ZLIB=OFF -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_LIBXML2=OFF -DLLVM_USE_CRT_RELEASE=MT msbuild /m -p:Configuration=Release INSTALL.vcxproj ``` @@ -308,10 +308,10 @@ msbuild /m -p:Configuration=Release INSTALL.vcxproj ##### Debug Mode ```bat -mkdir C:\Users\Andy\llvm-21.0.0.src\build-debug -cd C:\Users\Andy\llvm-21.0.0.src\build-debug -"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-debug - -DLLVM_ENABLE_ZLIB=OFF -DCMAKE_PREFIX_PATH=C:\Users\andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-debug -DCMAKE_BUILD_TYPE=Debug -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="AVR" -DLLVM_ENABLE_LIBXML2=OFF -DLLVM_USE_CRT_DEBUG=MTd +mkdir C:\Users\Andy\llvm-22.0.0.src\build-debug +cd C:\Users\Andy\llvm-22.0.0.src\build-debug +"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-debug - +DLLVM_ENABLE_ZLIB=OFF -DCMAKE_PREFIX_PATH=C:\Users\andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-debug -DCMAKE_BUILD_TYPE=Debug -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="AVR" -DLLVM_ENABLE_LIBXML2=OFF -DLLVM_USE_CRT_DEBUG=MTd msbuild /m INSTALL.vcxproj ``` @@ -322,18 +322,18 @@ Using the start menu, run **x64 Native Tools Command Prompt for VS 2019** and ex ##### Release Mode ```bat -mkdir C:\Users\Andy\lld-21.0.0.src\build-release -cd C:\Users\Andy\lld-21.0.0.src\build-release -"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\Andy\llvm+clang+lld-14.0.6-x86_64-windows-msvc-release-mt -DCMAKE_PREFIX_PATH=C:\Users\Andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-release-mt -DCMAKE_BUILD_TYPE=Release -DLLVM_USE_CRT_RELEASE=MT +mkdir C:\Users\Andy\lld-22.0.0.src\build-release +cd C:\Users\Andy\lld-22.0.0.src\build-release +"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\Andy\llvm+clang+lld-14.0.6-x86_64-windows-msvc-release-mt -DCMAKE_PREFIX_PATH=C:\Users\Andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-release-mt -DCMAKE_BUILD_TYPE=Release -DLLVM_USE_CRT_RELEASE=MT msbuild /m -p:Configuration=Release INSTALL.vcxproj ``` ##### Debug Mode ```bat -mkdir C:\Users\Andy\lld-21.0.0.src\build-debug -cd C:\Users\Andy\lld-21.0.0.src\build-debug -"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-debug -DCMAKE_PREFIX_PATH=C:\Users\andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-debug -DCMAKE_BUILD_TYPE=Debug -DLLVM_USE_CRT_DEBUG=MTd +mkdir C:\Users\Andy\lld-22.0.0.src\build-debug +cd C:\Users\Andy\lld-22.0.0.src\build-debug +"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-debug -DCMAKE_PREFIX_PATH=C:\Users\andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-debug -DCMAKE_BUILD_TYPE=Debug -DLLVM_USE_CRT_DEBUG=MTd msbuild /m INSTALL.vcxproj ``` @@ -344,18 +344,18 @@ Using the start menu, run **x64 Native Tools Command Prompt for VS 2019** and ex ##### Release Mode ```bat -mkdir C:\Users\Andy\clang-21.0.0.src\build-release -cd C:\Users\Andy\clang-21.0.0.src\build-release -"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\Andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-release-mt -DCMAKE_PREFIX_PATH=C:\Users\Andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-release-mt -DCMAKE_BUILD_TYPE=Release -DLLVM_USE_CRT_RELEASE=MT +mkdir C:\Users\Andy\clang-22.0.0.src\build-release +cd C:\Users\Andy\clang-22.0.0.src\build-release +"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\Andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-release-mt -DCMAKE_PREFIX_PATH=C:\Users\Andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-release-mt -DCMAKE_BUILD_TYPE=Release -DLLVM_USE_CRT_RELEASE=MT msbuild /m -p:Configuration=Release INSTALL.vcxproj ``` ##### Debug Mode ```bat -mkdir C:\Users\Andy\clang-21.0.0.src\build-debug -cd C:\Users\Andy\clang-21.0.0.src\build-debug -"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-debug -DCMAKE_PREFIX_PATH=C:\Users\andy\llvm+clang+lld-21.0.0-x86_64-windows-msvc-debug -DCMAKE_BUILD_TYPE=Debug -DLLVM_USE_CRT_DEBUG=MTd +mkdir C:\Users\Andy\clang-22.0.0.src\build-debug +cd C:\Users\Andy\clang-22.0.0.src\build-debug +"c:\Program Files\CMake\bin\cmake.exe" .. -Thost=x64 -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=C:\Users\andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-debug -DCMAKE_PREFIX_PATH=C:\Users\andy\llvm+clang+lld-22.0.0-x86_64-windows-msvc-debug -DCMAKE_BUILD_TYPE=Debug -DLLVM_USE_CRT_DEBUG=MTd msbuild /m INSTALL.vcxproj ``` @@ -371,14 +371,14 @@ This is the generally recommended approach. ```sh cd ~/Downloads -git clone --depth 1 --branch release/21.x https://github.com/llvm/llvm-project llvm-project-21 -cd llvm-project-21 -git checkout release/21.x +git clone --depth 1 --branch release/22.x https://github.com/llvm/llvm-project llvm-project-22 +cd llvm-project-22 +git checkout release/22.x mkdir build-release cd build-release cmake ../llvm \ - -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm21-assert \ + -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-assert \ -DCMAKE_BUILD_TYPE=Release \ -DLLVM_ENABLE_PROJECTS="lld;clang" \ -DLLVM_ENABLE_LIBXML2=OFF \ @@ -398,16 +398,16 @@ others are in Release mode. ```sh cd ~/Downloads -git clone --depth 1 --branch release/21.x https://github.com/llvm/llvm-project llvm-project-21 -cd llvm-project-21 -git checkout release/21.x +git clone --depth 1 --branch release/22.x https://github.com/llvm/llvm-project llvm-project-22 +cd llvm-project-22 +git checkout release/22.x # LLVM mkdir llvm/build-debug cd llvm/build-debug cmake .. \ - -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm21-debug \ - -DCMAKE_PREFIX_PATH=$HOME/local/llvm21-debug \ + -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-debug \ + -DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug \ -DCMAKE_BUILD_TYPE=Debug \ -DLLVM_ENABLE_LIBXML2=OFF \ -DLLVM_ENABLE_TERMINFO=OFF \ @@ -421,8 +421,8 @@ cd ../.. mkdir lld/build-debug cd lld/build-debug cmake .. \ - -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm21-debug \ - -DCMAKE_PREFIX_PATH=$HOME/local/llvm21-debug \ + -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-debug \ + -DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug \ -DCMAKE_BUILD_TYPE=Release \ -DLLVM_PARALLEL_LINK_JOBS=1 \ -DCMAKE_CXX_STANDARD=17 \ @@ -434,8 +434,8 @@ cd ../.. mkdir clang/build-debug cd clang/build-debug cmake .. \ - -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm21-debug \ - -DCMAKE_PREFIX_PATH=$HOME/local/llvm21-debug \ + -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-debug \ + -DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug \ -DCMAKE_BUILD_TYPE=Release \ -DLLVM_PARALLEL_LINK_JOBS=1 \ -DLLVM_INCLUDE_TESTS=OFF \ @@ -445,8 +445,8 @@ cd ../.. ``` Then add to your Zig CMake line that you got from the README.md: -`-DCMAKE_PREFIX_PATH=$HOME/local/llvm21-debug` or -`-DCMAKE_PREFIX_PATH=$HOME/local/llvm21-assert` depending on whether you want +`-DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug` or +`-DCMAKE_PREFIX_PATH=$HOME/local/llvm22-assert` depending on whether you want Debug or Release LLVM.