Skip to content

Windows ARM64 + Node 25: qmd embed fails due to node-llama-cpp CUDA build + sqlite-vec unavailable #222

@MrHinsh

Description

@MrHinsh

Summary

On Windows ARM64, qmd is effectively unusable out of the box.

Running qmd embed triggers:

  1. A failing CUDA build attempt via node-llama-cpp (LLVM for WoA required).
  2. A hard failure due to sqlite-vec not being available.

This makes embedding impossible on a clean Windows ARM64 system.

Environment

  • OS: Windows 11 ARM64 (WoA)
  • Architecture: win32 arm64
  • Node: v25.5.0
  • npm global install: @tobilu/qmd@1.0.7
  • GPU: none (CPU-only environment)

node -p "process.platform + ' ' + process.arch"
→ win32 arm64

Reproduction

  1. npm install -g @tobilu/qmd
  2. qmd embed

Observed Behaviour

First, node-llama-cpp attempts to build a CUDA variant:

[node-llama-cpp] A prebuilt binary was not found, falling back to building from source
CMake Error:
LLVM installation was not found. Please install LLVM for WoA

Then, even after falling back to CPU:

Error: sqlite-vec is not available.
Vector operations require a SQLite build with extension loading support.

Problems

  1. The CLI attempts a CUDA build on Windows ARM64 even when no GPU is present.
  2. No prebuilt binaries appear to be available for win-arm64 + current Node ABI.
  3. sqlite-vec is not available on this platform, causing embed to fail completely.
  4. There is no documented Windows ARM64 setup path.

Expected Behaviour

  • CPU-only mode should work without requiring LLVM or CUDA toolchains.
  • sqlite-vec dependency should either:
    • have a prebuilt for win-arm64, or
    • degrade gracefully with a clear instruction path.

Suggestions

  • Publish win-arm64 prebuilds for:
    • node-llama-cpp dependency stack
    • sqlite-vec dependency
  • Do not attempt CUDA builds when no GPU backend is configured.
  • Document supported Node versions and platforms explicitly.

At present, Windows ARM64 appears unsupported in practice.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions