Skip to main content
QuickJS-ng supports a wide range of operating systems and platforms. The following table lists all supported platforms with their version requirements and testing status.

Platform Support Matrix

*Windows 7 is EOL and only supported in this project as long as it doesn’t interfere with its progress.

Compiler Support

GCC

  • Version 11 or later recommended
  • C11 standard with GNU extensions
  • On macOS with GCC 11+, -Wno-maybe-uninitialized flag is required

Clang

  • Fully supported on all platforms
  • Recommended for Windows builds

MSVC

  • Visual Studio 2022 or later
  • Requires /experimental:c11atomics flag
  • C11 atomics support required

MinGW

  • MinGW-w64 toolchain
  • Full C11 support required

Platform-Specific Notes

Windows

  • Requires Visual Studio 2022 or later
  • C11 atomics support required (<stdatomic.h>)
  • Default stack size set to 8MB (vs 1MB default)
  • Use /experimental:c11atomics compiler flag

WASI (WebAssembly System Interface)

WASI builds require emulated process clocks and signal support.

Emscripten

QuickJS-ng can be compiled to WebAssembly using Emscripten:
The Emscripten build produces a WebAssembly module with:
  • 2MB stack size (instead of default 16KB)
  • ES6 module export
  • Exported runtime methods: ccall, cwrap

Mobile Platforms

iOS / tvOS / watchOS

  • Limited testing
  • No CLI tools installed on these platforms
  • Library-only builds
  • Platform-specific preprocessor definitions (_TVOS, _WATCHOS)

Android

  • NDK version 26.0.10792818 or later required
  • Limited testing
  • Full library and CLI support

Adding New Platforms

If you’ve successfully built QuickJS-ng on a platform not listed here, please open a pull request to add it to the documentation!

Unsupported Features by Platform