# How to build Wasm SDK from source?

**URL:** <https://forums.swift.org/t/how-to-build-wasm-sdk-from-source/85678>\
**Category:** Swift for WebAssembly\
**Created:** [March 29, 2026, 11:07pm UTC](https://forums.swift.org/t/how-to-build-wasm-sdk-from-source/85678 "2026-03-29T23:07:41Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![taylorswift](https://sea2.discourse-cdn.com/swift/user_avatar/forums.swift.org/taylorswift/32/43413_2.png) [@taylorswift](https://forums.swift.org/u/taylorswift)\
**Post date:** [March 29, 2026, 11:07pm UTC](https://forums.swift.org/t/how-to-build-wasm-sdk-from-source/85678/1 "2026-03-29T23:07:41Z")

</div>

i am desperately trying to obtain a `wasm32-unknown-wasip1-threads` SDK bundle that is compatible with the latest `swift-6.3-RELEASE` toolchain. i couldn’t figure out where to obtain such a bundle from official or unofficial sources (including `swiftwasm/swift`, which has stopped publishing SDKs), so i’ve resorted to trying to compile it from source.

but i can’t seem to coax `utils/build-script` into building that SDK bundle successfully either.

```plaintext
SWIFT_PATH="${SWIFT_INSTALLATION}/bin"

swift/utils/update-checkout --clone --tag swift-6.3-RELEASE
swift/utils/build-script \
    --skip-build-llvm \
    --skip-build-swift \
    --skip-build-cmark \
    --build-wasm-stdlib \
    --native-swift-tools-path="$SWIFT_PATH" \
    --native-clang-tools-path="$SWIFT_PATH" \
    --native-llvm-tools-path="$SWIFT_PATH"

```

```plaintext
[swift/utils/build-script] NOTE: Using toolchain default
+ /usr/local/bin/cmake --version
+ /usr/local/bin/ninja --version
+ mkdir -p /home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert
--- Building earlyswiftdriver ---
+ /home/runner/work/swift-docker-wasm/swift-docker-wasm/swift-driver/Utilities/build-script-helper.py build --package-path /home/runner/work/swift-docker-wasm/swift-docker-wasm/swift-driver --build-path /home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/earlyswiftdriver-linux-x86_64 --configuration release --toolchain /home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr --ninja-bin /usr/local/bin/ninja --cmake-bin /usr/local/bin/cmake --local_compiler_build
CMake Warning:
  Manually-specified variables were not used by the project:
    CMAKE_C_COMPILER
Building Swift Driver dependency: llbuild
Building Swift Driver dependency: TSC
Building Swift Driver dependency: Argument Parser
Building Swift Driver for target: x86_64-unknown-linux-gnu
--- Building wasilibc ---
+ make install -j 4 -C /home/runner/work/swift-docker-wasm/swift-docker-wasm/wasi-libc OBJDIR=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasilibc-linux-x86_64/obj-single SYSROOT=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasilibc-linux-x86_64/sysroot/wasm32-wasip1 INSTALL_DIR=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasi-sysroot/wasm32-wasip1/sysroot CC=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/clang AR=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/llvm-ar NM=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/llvm-nm THREAD_MODEL=single TARGET_TRIPLE=wasm32-wasip1
make: *** No rule to make target 'install'. Stop.
make: Entering directory '/home/runner/work/swift-docker-wasm/swift-docker-wasm/wasi-libc'
make: Leaving directory '/home/runner/work/swift-docker-wasm/swift-docker-wasm/wasi-libc'
ERROR: command `['make', 'install', '-j', '4', '-C', '/home/runner/work/swift-docker-wasm/swift-docker-wasm/wasi-libc', 'OBJDIR=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasilibc-linux-x86_64/obj-single', 'SYSROOT=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasilibc-linux-x86_64/sysroot/wasm32-wasip1', 'INSTALL_DIR=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasi-sysroot/wasm32-wasip1/sysroot', 'CC=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/clang', 'AR=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/llvm-ar', 'NM=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/llvm-nm', 'THREAD_MODEL=single', 'TARGET_TRIPLE=wasm32-wasip1']` terminated with a non-zero exit status 2, aborting

```

as far as i can tell, it does successfully check out the `wasi-libc` repository.

```bash
swift-project$ cd wasi-libc/
swift-project/wasi-libc$ git status

```

```swift
HEAD detached at wasi-sdk-31
nothing to commit, working tree clean

```

yes, i tried asking an LLM for help first, but it’s just as stumped as i am. the LLMs insist that something is broken upstream (in `swift/utils/build-script`) which, if true, would be an investigative dead end.
