You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
if not exist "C:\Users\runneradmin\.pecos\deps\llvm-21.1\bin\llvm-config.exe" (powershell.exe -NoProfile -ExecutionPolicy Bypass -File scripts\ci\install-llvm-21-windows.ps1 -InstallDir "C:\Users\runneradmin\.pecos\deps\llvm-21.1" -Version ${{ env.LLVM_RELEASE_VERSION }}) else (echo LLVM already installed from pecos-rslib build) &&
384
-
cargo run --locked --release -p pecos-cli -- llvm configure "C:\Users\runneradmin\.pecos\deps\llvm-21.1"
383
+
if not exist "C:\Users\runneradmin\.pecos\deps\llvm-21.1\Library\bin\llvm-config.exe" (powershell.exe -NoProfile -ExecutionPolicy Bypass -File scripts\ci\install-llvm-21-windows.ps1 -InstallDir "C:\Users\runneradmin\.pecos\deps\llvm-21.1" -Version ${{ env.LLVM_RELEASE_VERSION }}) else (echo LLVM already installed from pecos-rslib build) &&
384
+
cargo run --locked --release -p pecos-cli -- llvm configure "C:\Users\runneradmin\.pecos\deps\llvm-21.1\Library"
385
385
CIBW_BEFORE_BUILD_WINDOWS: >
386
386
pip install delvewheel &&
387
387
python -c "import delvewheel._dll_list as d,inspect,re as r;p=inspect.getfile(d);c=open(p).read();n=chr(10);open(p,'w').write(c.replace(r\"re.compile('api-.*'),\",r\"re.compile('api-.*'),\"+n+r\" re.compile('ext-.*'),\")) if 'ext-.*' not in c else None"
Copy file name to clipboardExpand all lines: docs/user-guide/llvm-setup.md
+19-11Lines changed: 19 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -42,10 +42,10 @@ The `install` command automatically:
42
42
This is the **recommended approach** where PECOS can provide a verified shared
43
43
LLVM package. On Debian/Ubuntu-compatible Linux distributions, PECOS downloads
44
44
the apt.llvm.org LLVM 21 packages into `~/.pecos/deps/llvm-21.1/` without using
45
-
`sudo`. On macOS, use Homebrew for LLVM 21. On Windows MSVC, LLVM does not
46
-
provide the shared `libLLVM` target PECOS requires for the full workspace HUGR
47
-
test lane; use WSL2/Linux for that lane, or configure a full LLVM package for
48
-
targeted static LLVM builds.
45
+
`sudo`. On macOS, use Homebrew for LLVM 21. On Windows MSVC, use the
46
+
conda-forge helper in the Windows section below; it installs a full LLVM
47
+
development environment under `~/.pecos/deps/llvm-21.1/` and configures
48
+
`~/.pecos/deps/llvm-21.1/Library` as the LLVM prefix.
49
49
50
50
This is a developer toolchain install: the CLI prints the install size/behavior
51
51
and asks for confirmation before downloading. Use `--yes` to accept the prompt
@@ -92,11 +92,17 @@ Install LLVM 21.1 using your system's package manager, then configure PECOS:
92
92
93
93
=== "Windows"
94
94
!!! warning "Windows LLVM Requirement"
95
-
The official LLVM Windows installer (`LLVM-*.exe`) is **toolchain-only** and lacks required development files (`llvm-config.exe` and headers). LLVM's MSVC builds also do not provide shared `libLLVM`, so `pecos rust test` / `just dev` with the full HUGR test lane is not supported on native Windows.
95
+
The official LLVM Windows installer (`LLVM-*.exe`) is **toolchain-only** and lacks required development files (`llvm-config.exe`, headers, and `libclang.dll`). Use a full LLVM development package built for the MSVC dynamic runtime.
96
96
97
-
**Recommended for full development tests:** Use WSL2/Linux and Option 1 above.
97
+
**Recommended for full development tests:** Use the PECOS conda-forge helper:
98
98
99
-
**Alternative for targeted static LLVM builds:** Download a full development package from:
cargo run -p pecos-cli -- llvm configure "$env:USERPROFILE\.pecos\deps\llvm-21.1\Library"
102
+
cargo build --features llvm
103
+
```
104
+
105
+
**Alternative:** Configure another full LLVM 21.1 development package that includes `llvm-config.exe`, headers, static MSVC libraries built against the dynamic runtime, and `libclang.dll`.
0 commit comments