wasm2c(1)

wasm2c1

Convert a webassembly binary file to a c source and header

Usage

wasm2c [options] filename

Overview

wasm2c Read a file in the WebAssembly binary format, and convert it to a C source file and header.

The options are as follows:

--help

Print this help message

--version

Print version information

-v, --verbose

Use multiple times for more info

-o, --output=FILENAME

Output file for the generated C source file, by default use stdout

--num-outputs=NUM

Number of output files to write

-n, --module-name=MODNAME

Unique name for the module being generated. This name is prefixed toeach of the generated C symbols. By default, the module name from thenames section is used. If that is not present the name of the inputfile is used as the default.

--disable-exceptions

Disable Experimental exception handling

--disable-mutable-globals

Disable Import/export mutable globals

--disable-saturating-float-to-int

Disable Saturating float-to-int operators

--disable-sign-extension

Disable Sign-extension operators

--disable-simd

Disable SIMD support

--enable-threads

Enable Threading support

--enable-function-references

Enable Typed function references

--disable-multi-value

Disable Multi-value

--disable-tail-call

Disable Tail-call support

--disable-bulk-memory

Disable Bulk-memory operations

--disable-reference-types

Disable Reference types (externref)

--disable-annotations

Disable Custom annotation syntax

--enable-code-metadata

Enable Code metadata

--enable-gc

Enable Garbage collection

--disable-memory64

Disable 64-bit memory

--disable-multi-memory

Disable Multi-memory

--disable-extended-const

Disable Extended constant expressions

--disable-relaxed-simd

Disable Relaxed SIMD

--enable-custom-page-sizes

Enable Custom page sizes

--enable-compact-imports

Enable Compact import section

--enable-wide-arithmetic

Enable Wide arithmetic

--enable-all

Enable all features

Examples

parse binary file test.wasm and write test.c and test.h

$ wasm2c test.wasm -o test.c

parse test.wasm, write test.c and test.h, but ignore the debug names, if any

$ wasm2c test.wasm --no-debug-names -o test.c

Releases

5 releases since Debian 10 (Buster); the text changed 3 times.

  1. 10–11
  2. 12
  3. 13
  4. Arch

--disable-annotations since Arch Linux 2026-11-01; --disable-bulk-memory since Debian 12 (Bookworm); --disable-exceptions since Arch Linux 2026-11-01; --disable-extended-const since Arch Linux 2026-11-01; --disable-memory64 since Arch Linux 2026-11-01; --disable-multi-memory since Arch Linux 2026-11-01; --disable-multi-value since Debian 12 (Bookworm); --disable-reference-types since Debian 12 (Bookworm); --disable-relaxed-simd since Arch Linux 2026-11-01; --disable-saturating-float-to-int since Debian 12 (Bookworm); --disable-sign-extension since Debian 12 (Bookworm); --disable-simd since Debian 12 (Bookworm); --disable-tail-call since Arch Linux 2026-11-01; --enable-all since Debian 12 (Bookworm); --enable-code-metadata since Debian 12 (Bookworm); --enable-compact-imports since Arch Linux 2026-11-01; --enable-custom-page-sizes since Arch Linux 2026-11-01; --enable-function-references since Debian 12 (Bookworm); --enable-gc since Debian 12 (Bookworm); --enable-wide-arithmetic since Arch Linux 2026-11-01; --module-name since Debian 12 (Bookworm); --num-outputs since Arch Linux 2026-11-01; --version since Debian 12 (Bookworm); -n since Debian 12 (Bookworm).

--enable-annotations until Debian 13 (Trixie); --enable-exceptions until Debian 13 (Trixie); --enable-extended-const until Debian 13 (Trixie); --enable-memory64 until Debian 13 (Trixie); --enable-multi-memory until Debian 13 (Trixie); --enable-saturating-float-to-int until Debian 11 (Bullseye); --enable-sign-extension until Debian 11 (Bullseye); --enable-simd until Debian 11 (Bullseye); --enable-tail-call until Debian 13 (Trixie); --no-debug-names until Debian 13 (Trixie).

Bugs

If you find a bug, please report it at
https://github.com/WebAssembly/wabt/issues.

From wabt 1.0.42-1 in Arch Linux 2026-11-01. Parsed by carta from the page's mdoc source.