- clang;
- lld (for wasm-ld);
- emscripten (3.0.0);
Optional:
- wabt (WebAssembly Binary Toolkit) (for wasm-objdump, wasm2wat);
cd webassembly/01_clang_simple_examples/module
make
cd ../memory
make
cd webassembly/02_emscripten_simple_examples
mkdir build
mkdir pages
cd build
emcmake cmake -DCMAKE_BUILD_TYPE=Release -DINSTALL_PREFIX_PATH=../pages ..
make install
cd webassembly/01_clang_simple_examples/module
python -m http.server
cd webassembly/01_clang_simple_examples/memory
python -m http.server
cd webassembly/02_emscripten_simple_examples/pages
./server.py
- Book "WebAssembly: The Definitive Guide: Safe, Fast, and Portable Code by Brian Sletten";
- Book "WebAssembly in Action by Gerard Gallant";
- Design rationale: https://github.com/WebAssembly/design/blob/main/Rationale.md
- Emscripten docs: https://emscripten.org/docs/porting/index.html
- Emscripten ported libraries : https://github.com/emscripten-ports
- V8 (JavaScript and WebAssembly engine from Google):
- Online wasm sandbox: https://webassembly.github.io/wabt/demo/wat2wasm/index.html
- WebAssembly interpreter: https://github.com/wasm3/wasm3
- Partial implementation of libc: https://github.com/PetterS/clang-wasm
- C/C++ DevTools Support (DWARF) (extension for Chrome): https://goo.gle/wasm-debugging-extension
- Wasm threads: https://dzone.com/articles/webassembly-threads-in-firefox
- Projects made with wasm: https://madewithwebassembly.com/all-projects