C++的构建环境比别的计算机语言要复杂得多,一切从头开始安装是最麻烦的,比如:安装编译器、第三方库等。在容器时代,使用已准备好的Docker镜像就省事多了。在开发WebAssembly C++时,可直接使用Emscripten SDK docker镜像。虽然C++ WebAssembly的构建比较复杂,但是,其生成的目标文件(*.wasm)比GoLang的要小很多,更适合于Web网络传输。
示例代码,见: hello-web-assembly-cpp
继续阅读→
从GoLang 1.11开始,直接支持编译目标为WebAssembly,不需要安装额外的TidyGo。
本文演示GoLang WebAssembly Hello World程序。
1. 编写main.go
package main
import "fmt"
func main() {
fmt.Println("Hello world!")
}
2. 设置GOARCH
、GOOS
环境变量,编译目标为wasm文件
Linux:
$ GOARCH=wasm GOOS=js go build -o lib.wasm main.go
$ cp "$(go env GOROOT)/misc/wasm/wasm_exec.js" .
Windows Powershell:
$Env:GOOS='js'
$Env:GOARCH='wasm'
go build -o main.wasm
继续阅读→