wasmtime CLI is organized into a few subcommands. If no subcommand is
provided it'll assume
run, which is to execute a wasm file. The subcommands
This is a general subcommand used to print help information to the terminal. You can execute any number of the following:
$ wasmtime help
$ wasmtime --help
$ wasmtime -h
$ wasmtime help run
$ wasmtime run -h
When in doubt, try running the
help command to learn more about functionality!
This is the
wasmtime CLI's main subcommand, and it's also the default if no
other subcommand is provided. The
run command will execute a WebAssembly
module. This means that the module will be compiled to native code,
instantiated, and then optionally have an export executed.
wasmtime CLI will automatically hook up any WASI-related imported
functionality, but at this time if your module imports anything else it will
run command takes one positional argument which is the name of the module
$ wasmtime run foo.wasm
$ wasmtime foo.wasm
Note that the
wasmtime CLI can take both a binary WebAssembly file (
as well as the text format for WebAssembly (
$ wasmtime foo.wat
run command accepts an optional
invoke argument which is the name of
an exported function of the module to run.
$ wasmtime run foo.wasm --invoke initialize
wast command executes a
*.wast file which is the test format for the
official WebAssembly spec test suite. This subcommand will execute the script
file which has a number of directives supported to instantiate modules, link
Executing this looks like:
$ wasmtime wast foo.wast
This subcommand is used to control and edit local Wasmtime configuration settings. The primary purpose of this currently is to configure how Wasmtime's code caching works. You can create a new configuration file for you to edit with:
$ wasmtime config new
And that'll print out the path to the file you can edit.
This subcommand is used to Ahead-Of-Time (AOT) compile a WebAssembly module to produce a "compiled wasm" (.cwasm) file.
wasmtime run subcommand can then be used to run a AOT-compiled WebAssembly module:
$ wasmtime compile foo.wasm
$ wasmtime foo.cwasm
AOT-compiled modules can be run from hosts that are compatible with the target environment of the AOT-completed module.
This subcommand is used to print the available Cranelift settings for a given target.
When run without options, it will print the settings for the host target and also display what Cranelift settings are inferred for the host:
$ wasmtime settings