authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-08-03 14:57:45+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-10-07 00:30:50+02:00
log3a2f2614e1af0713b98a8b26c6848f705649f4b4
tree30265f6a919293e55d214e846b88d1db734b6284
parent6c78e9250de36f2e21e710940e6f8d0e8516556f
signature Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

README: update to LLVM 23


1 files changed, 41 insertions(+), 41 deletions(-)

README.md+41-41
...@@ -47,7 +47,7 @@ Ensure you have the required dependencies:...@@ -47,7 +47,7 @@ Ensure you have the required dependencies:
4747
48 * CMake >= 3.1548 * CMake >= 3.15
49 * System C/C++ Toolchain49 * System C/C++ Toolchain
50 * LLVM, Clang, LLD development libraries, version 22.x, compiled with the50 * LLVM, Clang, LLD development libraries, version 23.x, compiled with the
51 same system C/C++ toolchain.51 same system C/C++ toolchain.
52 - If the system package manager lacks these libraries, or has them misconfigured,52 - If the system package manager lacks these libraries, or has them misconfigured,
53 see below for how to build them from source.53 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...@@ -257,15 +257,15 @@ that you have **no** trailing slash (`/` or `\`) at the end of the
257257
258Install [CMake](https://cmake.org/), version 3.20.0 or newer.258Install [CMake](https://cmake.org/), version 3.20.0 or newer.
259259
260[Download LLVM, Clang, and LLD sources](https://releases.llvm.org/download.html#22.0.0)260[Download LLVM, Clang, and LLD sources](https://releases.llvm.org/download.html#23.0.0)
261The downloads from llvm lead to the github release pages, where the source's261The downloads from llvm lead to the github release pages, where the source's
262will be listed as : `llvm-22.X.X.src.tar.xz`, `clang-22.X.X.src.tar.xz`,262will be listed as : `llvm-23.X.X.src.tar.xz`, `clang-23.X.X.src.tar.xz`,
263`lld-22.X.X.src.tar.xz`. Unzip each to their own directory. Ensure no263`lld-23.X.X.src.tar.xz`. Unzip each to their own directory. Ensure no
264directories have spaces in them. For example:264directories have spaces in them. For example:
265265
266 * `C:\Users\Andy\llvm-22.0.0.src`266 * `C:\Users\Andy\llvm-23.0.0.src`
267 * `C:\Users\Andy\clang-22.0.0.src`267 * `C:\Users\Andy\clang-23.0.0.src`
268 * `C:\Users\Andy\lld-22.0.0.src`268 * `C:\Users\Andy\lld-23.0.0.src`
269269
270Install [Build Tools for Visual Studio270Install [Build Tools for Visual Studio
2712019](https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019).2712019](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...@@ -298,9 +298,9 @@ Using the start menu, run **x64 Native Tools Command Prompt for VS 2019** and ex
298##### Release Mode298##### Release Mode
299299
300```bat300```bat
301mkdir C:\Users\Andy\llvm-22.0.0.src\build-release301mkdir C:\Users\Andy\llvm-23.0.0.src\build-release
302cd C:\Users\Andy\llvm-22.0.0.src\build-release302cd C:\Users\Andy\llvm-23.0.0.src\build-release
303"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 -303"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-23.0.0-x86_64-windows-msvc-release-mt -DCMAKE_PREFIX_PATH=C:\Users\Andy\llvm+clang+lld-23.0.0-x86_64-windows-msvc-release-mt -
304DLLVM_ENABLE_ZLIB=OFF -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_LIBXML2=OFF -DLLVM_USE_CRT_RELEASE=MT304DLLVM_ENABLE_ZLIB=OFF -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_LIBXML2=OFF -DLLVM_USE_CRT_RELEASE=MT
305msbuild /m -p:Configuration=Release INSTALL.vcxproj305msbuild /m -p:Configuration=Release INSTALL.vcxproj
306```306```
...@@ -308,10 +308,10 @@ msbuild /m -p:Configuration=Release INSTALL.vcxproj...@@ -308,10 +308,10 @@ msbuild /m -p:Configuration=Release INSTALL.vcxproj
308##### Debug Mode308##### Debug Mode
309309
310```bat310```bat
311mkdir C:\Users\Andy\llvm-22.0.0.src\build-debug311mkdir C:\Users\Andy\llvm-23.0.0.src\build-debug
312cd C:\Users\Andy\llvm-22.0.0.src\build-debug312cd C:\Users\Andy\llvm-23.0.0.src\build-debug
313"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 -313"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-23.0.0-x86_64-windows-msvc-debug -
314DLLVM_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=MTd314DLLVM_ENABLE_ZLIB=OFF -DCMAKE_PREFIX_PATH=C:\Users\andy\llvm+clang+lld-23.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
315msbuild /m INSTALL.vcxproj315msbuild /m INSTALL.vcxproj
316```316```
317317
...@@ -322,18 +322,18 @@ Using the start menu, run **x64 Native Tools Command Prompt for VS 2019** and ex...@@ -322,18 +322,18 @@ Using the start menu, run **x64 Native Tools Command Prompt for VS 2019** and ex
322##### Release Mode322##### Release Mode
323323
324```bat324```bat
325mkdir C:\Users\Andy\lld-22.0.0.src\build-release325mkdir C:\Users\Andy\lld-23.0.0.src\build-release
326cd C:\Users\Andy\lld-22.0.0.src\build-release326cd C:\Users\Andy\lld-23.0.0.src\build-release
327"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=MT327"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-23.0.0-x86_64-windows-msvc-release-mt -DCMAKE_BUILD_TYPE=Release -DLLVM_USE_CRT_RELEASE=MT
328msbuild /m -p:Configuration=Release INSTALL.vcxproj328msbuild /m -p:Configuration=Release INSTALL.vcxproj
329```329```
330330
331##### Debug Mode331##### Debug Mode
332332
333```bat333```bat
334mkdir C:\Users\Andy\lld-22.0.0.src\build-debug334mkdir C:\Users\Andy\lld-23.0.0.src\build-debug
335cd C:\Users\Andy\lld-22.0.0.src\build-debug335cd C:\Users\Andy\lld-23.0.0.src\build-debug
336"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=MTd336"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-23.0.0-x86_64-windows-msvc-debug -DCMAKE_PREFIX_PATH=C:\Users\andy\llvm+clang+lld-23.0.0-x86_64-windows-msvc-debug -DCMAKE_BUILD_TYPE=Debug -DLLVM_USE_CRT_DEBUG=MTd
337msbuild /m INSTALL.vcxproj337msbuild /m INSTALL.vcxproj
338```338```
339339
...@@ -344,18 +344,18 @@ Using the start menu, run **x64 Native Tools Command Prompt for VS 2019** and ex...@@ -344,18 +344,18 @@ Using the start menu, run **x64 Native Tools Command Prompt for VS 2019** and ex
344##### Release Mode344##### Release Mode
345345
346```bat346```bat
347mkdir C:\Users\Andy\clang-22.0.0.src\build-release347mkdir C:\Users\Andy\clang-23.0.0.src\build-release
348cd C:\Users\Andy\clang-22.0.0.src\build-release348cd C:\Users\Andy\clang-23.0.0.src\build-release
349"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=MT349"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-23.0.0-x86_64-windows-msvc-release-mt -DCMAKE_PREFIX_PATH=C:\Users\Andy\llvm+clang+lld-23.0.0-x86_64-windows-msvc-release-mt -DCMAKE_BUILD_TYPE=Release -DLLVM_USE_CRT_RELEASE=MT
350msbuild /m -p:Configuration=Release INSTALL.vcxproj350msbuild /m -p:Configuration=Release INSTALL.vcxproj
351```351```
352352
353##### Debug Mode353##### Debug Mode
354354
355```bat355```bat
356mkdir C:\Users\Andy\clang-22.0.0.src\build-debug356mkdir C:\Users\Andy\clang-23.0.0.src\build-debug
357cd C:\Users\Andy\clang-22.0.0.src\build-debug357cd C:\Users\Andy\clang-23.0.0.src\build-debug
358"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=MTd358"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-23.0.0-x86_64-windows-msvc-debug -DCMAKE_PREFIX_PATH=C:\Users\andy\llvm+clang+lld-23.0.0-x86_64-windows-msvc-debug -DCMAKE_BUILD_TYPE=Debug -DLLVM_USE_CRT_DEBUG=MTd
359msbuild /m INSTALL.vcxproj359msbuild /m INSTALL.vcxproj
360```360```
361361
...@@ -371,14 +371,14 @@ This is the generally recommended approach....@@ -371,14 +371,14 @@ This is the generally recommended approach.
371371
372```sh372```sh
373cd ~/Downloads373cd ~/Downloads
374git clone --depth 1 --branch release/22.x https://github.com/llvm/llvm-project llvm-project-22374git clone --depth 1 --branch release/23.x https://github.com/llvm/llvm-project llvm-project-23
375cd llvm-project-22375cd llvm-project-23
376git checkout release/22.x376git checkout release/23.x
377377
378mkdir build-release378mkdir build-release
379cd build-release379cd build-release
380cmake ../llvm \380cmake ../llvm \
381 -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-assert \381 -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm23-assert \
382 -DCMAKE_BUILD_TYPE=Release \382 -DCMAKE_BUILD_TYPE=Release \
383 -DLLVM_ENABLE_PROJECTS="lld;clang" \383 -DLLVM_ENABLE_PROJECTS="lld;clang" \
384 -DLLVM_ENABLE_LIBXML2=OFF \384 -DLLVM_ENABLE_LIBXML2=OFF \
...@@ -399,16 +399,16 @@ others are in Release mode....@@ -399,16 +399,16 @@ others are in Release mode.
399399
400```sh400```sh
401cd ~/Downloads401cd ~/Downloads
402git clone --depth 1 --branch release/22.x https://github.com/llvm/llvm-project llvm-project-22402git clone --depth 1 --branch release/23.x https://github.com/llvm/llvm-project llvm-project-23
403cd llvm-project-22403cd llvm-project-23
404git checkout release/22.x404git checkout release/23.x
405405
406# LLVM406# LLVM
407mkdir llvm/build-debug407mkdir llvm/build-debug
408cd llvm/build-debug408cd llvm/build-debug
409cmake .. \409cmake .. \
410 -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-debug \410 -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm23-debug \
411 -DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug \411 -DCMAKE_PREFIX_PATH=$HOME/local/llvm23-debug \
412 -DCMAKE_BUILD_TYPE=Debug \412 -DCMAKE_BUILD_TYPE=Debug \
413 -DLLVM_ENABLE_LIBXML2=OFF \413 -DLLVM_ENABLE_LIBXML2=OFF \
414 -DLLVM_ENABLE_TERMINFO=OFF \414 -DLLVM_ENABLE_TERMINFO=OFF \
...@@ -422,8 +422,8 @@ cd ../.....@@ -422,8 +422,8 @@ cd ../..
422mkdir lld/build-debug422mkdir lld/build-debug
423cd lld/build-debug423cd lld/build-debug
424cmake .. \424cmake .. \
425 -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-debug \425 -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm23-debug \
426 -DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug \426 -DCMAKE_PREFIX_PATH=$HOME/local/llvm23-debug \
427 -DCMAKE_BUILD_TYPE=Release \427 -DCMAKE_BUILD_TYPE=Release \
428 -DLLVM_PARALLEL_LINK_JOBS=1 \428 -DLLVM_PARALLEL_LINK_JOBS=1 \
429 -DCMAKE_CXX_STANDARD=17 \429 -DCMAKE_CXX_STANDARD=17 \
...@@ -435,8 +435,8 @@ cd ../.....@@ -435,8 +435,8 @@ cd ../..
435mkdir clang/build-debug435mkdir clang/build-debug
436cd clang/build-debug436cd clang/build-debug
437cmake .. \437cmake .. \
438 -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm22-debug \438 -DCMAKE_INSTALL_PREFIX=$HOME/local/llvm23-debug \
439 -DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug \439 -DCMAKE_PREFIX_PATH=$HOME/local/llvm23-debug \
440 -DCMAKE_BUILD_TYPE=Release \440 -DCMAKE_BUILD_TYPE=Release \
441 -DLLVM_PARALLEL_LINK_JOBS=1 \441 -DLLVM_PARALLEL_LINK_JOBS=1 \
442 -DLLVM_INCLUDE_TESTS=OFF \442 -DLLVM_INCLUDE_TESTS=OFF \
...@@ -446,8 +446,8 @@ cd ../.....@@ -446,8 +446,8 @@ cd ../..
446```446```
447447
448Then add to your Zig CMake line that you got from the README.md:448Then add to your Zig CMake line that you got from the README.md:
449`-DCMAKE_PREFIX_PATH=$HOME/local/llvm22-debug` or449`-DCMAKE_PREFIX_PATH=$HOME/local/llvm23-debug` or
450`-DCMAKE_PREFIX_PATH=$HOME/local/llvm22-assert` depending on whether you want450`-DCMAKE_PREFIX_PATH=$HOME/local/llvm23-assert` depending on whether you want
451Debug or Release LLVM.451Debug or Release LLVM.
452452
453453