Example 1: Export C Functions to WASM
The related code/working directory of this example resides in directory {WAMR_DIR}/samples/basic
The "basic" sample project
This sample demonstrates a few basic usages of embedding WAMR:
initialize runtime
load wasm app and instantiate the module
call wasm function and pass arguments
export native functions to the WASM apps
wasm function calls native function and pass arguments
deinitialize runtime
Build this sample
Execute the build.sh
script then all binaries including wasm application files would be generated in 'out' directory.
$ ./build.sh
Run the sample
Enter the out directory.
$ cd ./out/
$
$ ./basic -f wasm-apps/testapp.wasm
calling into WASM function: generate_float
Native finished calling wasm function generate_float(), returned a float value: 102009.921875f
calling into WASM function: float_to_string
calling into native function: intToStr
calling into native function: get_pow
calling into native function: intToStr
Native finished calling wasm function: float_to_string, returned a formatted string: 102009.921
Or execute the run.sh
script in samples/basic
folder.
$ ./run.sh
calling into WASM function: generate_float
Native finished calling wasm function generate_float(), returned a float value: 102009.921875f
calling into WASM function: float_to_string
calling into native function: intToStr
calling into native function: get_pow
calling into native function: intToStr
Native finished calling wasm function: float_to_string, returned a formatted string: 102009.921
Last updated