mirror of
https://codeberg.org/ziglang/zig.git
synced 2026-04-26 13:01:34 +03:00
README: LLVM 21 -> 22
This commit is contained in:
@@ -47,7 +47,7 @@ Ensure you have the required dependencies:
|
|||||||
|
|
||||||
* CMake >= 3.15
|
* CMake >= 3.15
|
||||||
* System C/C++ Toolchain
|
* 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.
|
same system C/C++ toolchain.
|
||||||
- If the system package manager lacks these libraries, or has them misconfigured,
|
- If the system package manager lacks these libraries, or has them misconfigured,
|
||||||
see below for how to build them from source.
|
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.
|
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
|
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`,
|
will be listed as : `llvm-22.X.X.src.tar.xz`, `clang-22.X.X.src.tar.xz`,
|
||||||
`lld-21.X.X.src.tar.xz`. Unzip each to their own directory. Ensure no
|
`lld-22.X.X.src.tar.xz`. Unzip each to their own directory. Ensure no
|
||||||
directories have spaces in them. For example:
|
directories have spaces in them. For example:
|
||||||
|
|
||||||
* `C:\Users\Andy\llvm-21.0.0.src`
|
* `C:\Users\Andy\llvm-22.0.0.src`
|
||||||
* `C:\Users\Andy\clang-21.0.0.src`
|
* `C:\Users\Andy\clang-22.0.0.src`
|
||||||
* `C:\Users\Andy\lld-21.0.0.src`
|
* `C:\Users\Andy\lld-22.0.0.src`
|
||||||
|
|
||||||
Install [Build Tools for Visual Studio
|
Install [Build Tools for Visual Studio
|
||||||
2019](https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019).
|
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
|
##### Release Mode
|
||||||
|
|
||||||
```bat
|
```bat
|
||||||
mkdir C:\Users\Andy\llvm-21.0.0.src\build-release
|
mkdir C:\Users\Andy\llvm-22.0.0.src\build-release
|
||||||
cd C:\Users\Andy\llvm-21.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-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 -
|
"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
|
DLLVM_ENABLE_ZLIB=OFF -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_LIBXML2=OFF -DLLVM_USE_CRT_RELEASE=MT
|
||||||
msbuild /m -p:Configuration=Release INSTALL.vcxproj
|
msbuild /m -p:Configuration=Release INSTALL.vcxproj
|
||||||
```
|
```
|
||||||
@@ -308,10 +308,10 @@ msbuild /m -p:Configuration=Release INSTALL.vcxproj
|
|||||||
##### Debug Mode
|
##### Debug Mode
|
||||||
|
|
||||||
```bat
|
```bat
|
||||||
mkdir C:\Users\Andy\llvm-21.0.0.src\build-debug
|
mkdir C:\Users\Andy\llvm-22.0.0.src\build-debug
|
||||||
cd C:\Users\Andy\llvm-21.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-21.0.0-x86_64-windows-msvc-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-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
|
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
|
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
|
##### Release Mode
|
||||||
|
|
||||||
```bat
|
```bat
|
||||||
mkdir C:\Users\Andy\lld-21.0.0.src\build-release
|
mkdir C:\Users\Andy\lld-22.0.0.src\build-release
|
||||||
cd C:\Users\Andy\lld-21.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-21.0.0-x86_64-windows-msvc-release-mt -DCMAKE_BUILD_TYPE=Release -DLLVM_USE_CRT_RELEASE=MT
|
"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
|
msbuild /m -p:Configuration=Release INSTALL.vcxproj
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Debug Mode
|
##### Debug Mode
|
||||||
|
|
||||||
```bat
|
```bat
|
||||||
mkdir C:\Users\Andy\lld-21.0.0.src\build-debug
|
mkdir C:\Users\Andy\lld-22.0.0.src\build-debug
|
||||||
cd C:\Users\Andy\lld-21.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-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
|
"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
|
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
|
##### Release Mode
|
||||||
|
|
||||||
```bat
|
```bat
|
||||||
mkdir C:\Users\Andy\clang-21.0.0.src\build-release
|
mkdir C:\Users\Andy\clang-22.0.0.src\build-release
|
||||||
cd C:\Users\Andy\clang-21.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-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
|
"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
|
msbuild /m -p:Configuration=Release INSTALL.vcxproj
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Debug Mode
|
##### Debug Mode
|
||||||
|
|
||||||
```bat
|
```bat
|
||||||
mkdir C:\Users\Andy\clang-21.0.0.src\build-debug
|
mkdir C:\Users\Andy\clang-22.0.0.src\build-debug
|
||||||
cd C:\Users\Andy\clang-21.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-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
|
"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
|
msbuild /m INSTALL.vcxproj
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -371,14 +371,14 @@ This is the generally recommended approach.
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
cd ~/Downloads
|
cd ~/Downloads
|
||||||
git clone --depth 1 --branch release/21.x https://github.com/llvm/llvm-project llvm-project-21
|
git clone --depth 1 --branch release/22.x https://github.com/llvm/llvm-project llvm-project-22
|
||||||
cd llvm-project-21
|
cd llvm-project-22
|
||||||
git checkout release/21.x
|
git checkout release/22.x
|
||||||
|
|
||||||
mkdir build-release
|
mkdir build-release
|
||||||
cd build-release
|
cd build-release
|
||||||
cmake ../llvm \
|
cmake ../llvm \
|
||||||
-DCMAKE_INSTALL_PREFIX=$HOME/local/llvm21-assert \
|
-DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-assert \
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
-DLLVM_ENABLE_PROJECTS="lld;clang" \
|
-DLLVM_ENABLE_PROJECTS="lld;clang" \
|
||||||
-DLLVM_ENABLE_LIBXML2=OFF \
|
-DLLVM_ENABLE_LIBXML2=OFF \
|
||||||
@@ -398,16 +398,16 @@ others are in Release mode.
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
cd ~/Downloads
|
cd ~/Downloads
|
||||||
git clone --depth 1 --branch release/21.x https://github.com/llvm/llvm-project llvm-project-21
|
git clone --depth 1 --branch release/22.x https://github.com/llvm/llvm-project llvm-project-22
|
||||||
cd llvm-project-21
|
cd llvm-project-22
|
||||||
git checkout release/21.x
|
git checkout release/22.x
|
||||||
|
|
||||||
# LLVM
|
# LLVM
|
||||||
mkdir llvm/build-debug
|
mkdir llvm/build-debug
|
||||||
cd llvm/build-debug
|
cd llvm/build-debug
|
||||||
cmake .. \
|
cmake .. \
|
||||||
-DCMAKE_INSTALL_PREFIX=$HOME/local/llvm21-debug \
|
-DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-debug \
|
||||||
-DCMAKE_PREFIX_PATH=$HOME/local/llvm21-debug \
|
-DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug \
|
||||||
-DCMAKE_BUILD_TYPE=Debug \
|
-DCMAKE_BUILD_TYPE=Debug \
|
||||||
-DLLVM_ENABLE_LIBXML2=OFF \
|
-DLLVM_ENABLE_LIBXML2=OFF \
|
||||||
-DLLVM_ENABLE_TERMINFO=OFF \
|
-DLLVM_ENABLE_TERMINFO=OFF \
|
||||||
@@ -421,8 +421,8 @@ cd ../..
|
|||||||
mkdir lld/build-debug
|
mkdir lld/build-debug
|
||||||
cd lld/build-debug
|
cd lld/build-debug
|
||||||
cmake .. \
|
cmake .. \
|
||||||
-DCMAKE_INSTALL_PREFIX=$HOME/local/llvm21-debug \
|
-DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-debug \
|
||||||
-DCMAKE_PREFIX_PATH=$HOME/local/llvm21-debug \
|
-DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug \
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
-DLLVM_PARALLEL_LINK_JOBS=1 \
|
-DLLVM_PARALLEL_LINK_JOBS=1 \
|
||||||
-DCMAKE_CXX_STANDARD=17 \
|
-DCMAKE_CXX_STANDARD=17 \
|
||||||
@@ -434,8 +434,8 @@ cd ../..
|
|||||||
mkdir clang/build-debug
|
mkdir clang/build-debug
|
||||||
cd clang/build-debug
|
cd clang/build-debug
|
||||||
cmake .. \
|
cmake .. \
|
||||||
-DCMAKE_INSTALL_PREFIX=$HOME/local/llvm21-debug \
|
-DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-debug \
|
||||||
-DCMAKE_PREFIX_PATH=$HOME/local/llvm21-debug \
|
-DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug \
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
-DLLVM_PARALLEL_LINK_JOBS=1 \
|
-DLLVM_PARALLEL_LINK_JOBS=1 \
|
||||||
-DLLVM_INCLUDE_TESTS=OFF \
|
-DLLVM_INCLUDE_TESTS=OFF \
|
||||||
@@ -445,8 +445,8 @@ cd ../..
|
|||||||
```
|
```
|
||||||
|
|
||||||
Then add to your Zig CMake line that you got from the README.md:
|
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/llvm22-debug` or
|
||||||
`-DCMAKE_PREFIX_PATH=$HOME/local/llvm21-assert` depending on whether you want
|
`-DCMAKE_PREFIX_PATH=$HOME/local/llvm22-assert` depending on whether you want
|
||||||
Debug or Release LLVM.
|
Debug or Release LLVM.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user