This repository has been archived on 2023-11-05. You can view files and clone it, but cannot push or open issues or pull requests.
wasm-micro-runtime/samples/basic
Wenyong Huang 034606b0a9
Change wasm app offset type from int32 to uint32 (#361)
And fix some sign/unsigned conversion compilation warnings.
2020-08-26 18:33:29 +08:00
..
src Change wasm app offset type from int32 to uint32 (#361) 2020-08-26 18:33:29 +08:00
wasm-apps Fix function type not set issue of aot_call_indirect (#229) 2020-04-07 11:04:46 +08:00
.gitignore Fix function type not set issue of aot_call_indirect (#229) 2020-04-07 11:04:46 +08:00
build.sh Fix function type not set issue of aot_call_indirect (#229) 2020-04-07 11:04:46 +08:00
CMakeLists.txt Fix the build issues on mac for some samples (#358) 2020-08-21 15:14:04 +08:00
README.md fix one typo in samples/basic.README.md (#274) 2020-06-03 15:17:22 +08:00
run.sh Add a basic sample to show how native runtime invokes wasm apps in WAMR and how wasm apps invoke native functions. (#207) 2020-03-20 16:39:13 +08:00

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