The recommended method to build a WASM binary is to use clang compiler clang-8. You can refer to apt.llvm.org for the detailed instructions. Here are referenced steps to install clang-8 in Ubuntu 16.04 and Ubuntu 18.04.
(1) Add source to your system source list from llvm website
For Ubuntu 16.04, add the following lines to /etc/apt/sources.list:
For Ubuntu 18.04, add the following lines to /etc/apt/sources.list:
# i386 not availabledebhttp://apt.llvm.org/bionic/llvm-toolchain-bionicmaindeb-srchttp://apt.llvm.org/bionic/llvm-toolchain-bionicmain# 8debhttp://apt.llvm.org/bionic/llvm-toolchain-bionic-8maindeb-srchttp://apt.llvm.org/bionic/llvm-toolchain-bionic-8main# 9debhttp://apt.llvm.org/bionic/llvm-toolchain-bionic-9maindeb-srchttp://apt.llvm.org/bionic/llvm-toolchain-bionic-9main
(2) Download and install clang-8 tool-chain using following commands:
(3) Create a soft link under /usr/bin:
(4) Use the clang-8 command below to build the WASM C source code into the WASM binary.
You will get test.wasm which is the WASM app binary.
Using Docker
Another method available is using Docker. We assume you've already configured Docker (see Platform section above) and have a running interactive shell. Currently the Dockerfile only supports compiling apps with clang, with Emscripten planned for the future.
Use the clang-8 command below to build the WASM C source code into the WASM binary.
You will get test.wasm which is the WASM app binary.