Tinygo is a Go compiler for microcontrollers and WebAssembly. It also supports x86 32 bit and 64 bit Linux.

Getting Started


sudo apt install llvm-7-dev libclang-7-dev
go get -u


To compile a Linux executable:

tinygo build -o hello_tiny hello.go

The output size of a hello world program is very impressive to me:

1.1M    hello
12K     hello_tiny

Or run it directly:

tinygo run hello.go

Go Language Features

Not supported: