wat2wasm(1)

WABT(1) General Commands Manual WABT(1)

NAME

wat2wasmtranslate from WebAssembly text format to the WebAssembly binary format

SYNOPSIS

wat2wasm [options] file

DESCRIPTION

wat2wasm Read a file in the wasm text format, check it for errors, and convert it to the wasm binary format.

The options are as follows:

--help
Print this help message
--version
Print version information
-v, --verbose
Use multiple times for more info
--debug-parser
Turn on debugging the parser of wat files
-d, --dump-module
Print a hexdump of the module to stdout
--enable-exceptions
Enable 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
--enable-tail-call
Enable Tail-call support
--disable-bulk-memory
Disable Bulk-memory operations
--disable-reference-types
Disable Reference types (externref)
--enable-annotations
Enable Custom annotation syntax
--enable-code-metadata
Enable Code metadata
--enable-gc
Enable Garbage collection
--enable-memory64
Enable 64-bit memory
--enable-multi-memory
Enable Multi-memory
--enable-extended-const
Enable Extended constant expressions
--enable-all
Enable all features
-o, --output=FILE
Output wasm binary file. Use "-" to write to stdout.
-r, --relocatable
Create a relocatable wasm binary (suitable for linking with e.g. lld)
--no-canonicalize-leb128s
Write all LEB128 sizes as 5-bytes instead of their minimal size
--debug-names
Write debug names to the generated binary file
--no-check
Don't check for invalid modules

EXAMPLES

Parse test.wat and write to .wasm binary file with the same name

$ wat2wasm test.wat

Parse test.wat and write to binary file test.wasm

$ wat2wasm test.wat -o test.wasm

Parse spec-test.wast, and write verbose output to stdout (including the meaning of every byte)

$ wat2wasm spec-test.wast -v

SEE ALSO

wasm-decompile(1), wasm-interp(1), wasm-objdump(1), wasm-stats(1), wasm-strip(1), wasm-validate(1), wasm2c(1), wasm2wat(1), wast2json(1), wat-desugar(1), spectest-interp(1)

BUGS

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

July 22, 2026 Linux 6.12.85-6.12-alt1