Go (Golang) Expands Horizons: New Platform Support

Online Python Trainer for Beginners

Learn Python easily without overwhelming theory. Solve practical tasks with automatic checking, get hints in Russian, and write code directly in your browser — no installation required.

Start Course

Go (Golang) Officially Expands the List of Supported Platforms



The Go (Golang) community has received an important update: the development team announced the addition of support for a new hardware platform. This step is a logical continuation of the strategy to expand the language's ecosystem, making it an even more versatile tool for developers worldwide. We are talking about the inclusion of the RISC-V platform in a 64-bit configuration (riscv64) in the list of officially supported architectures.



Previously, Go already supported major architectures (x86, x86-64, ARM, ARM64, and others), but the addition of RISC-V opens up new opportunities for embedded systems, high-performance computing, and IoT devices. Developers can now compile and run Go programs on hardware using the open RISC-V architecture without the need for third-party patches or forks.



What Does This Mean for Developers?



RISC-V support in Go is not just a formality. It implies a full cycle: from compilation to debugging. The main advantages include:



  • Native compilation — binary files built for RISC-V run without additional emulators.
  • Full compatibility with the toolchain — Go tests, benchmarks, and static analyzers are also available for the new platform.
  • Optimization for the open architecture — the compiler uses RISC-V-specific instructions, improving performance.


This is especially relevant for startups and research groups working with custom chips based on RISC-V. Go, with its simplicity, fast compilation, and built-in garbage collection, becomes an ideal candidate for writing firmware, network services, and utilities for such devices.



How Does It Work in Practice?



To start using Go on RISC-V, simply install the current version of the compiler (Go 1.20 and newer support riscv64). Building is done with the standard command:



GOOS=linux GOARCH=riscv64 go build


Go automatically uses the necessary system calls and libraries. Developers note that for most applications, no code changes are required — just recompile the project. However, it is worth considering that some packages depending on assembly inserts or platform-specific C libraries may require adaptation.



Prospects and Impact on the Ecosystem



The addition of RISC-V is a signal that Go continues to move toward heterogeneous computing. In the future, we can expect:



  • Improved support for RISC-V in Go packages for working with hardware (for example, in the syscall and net packages).
  • Growth in the number of open-source Go projects focused on embedded systems.
  • Simplified development for cloud providers that are beginning to adopt RISC-V servers.


Currently, support is at the "tier 1" stage — meaning all changes undergo full testing on real hardware. Go developers are also actively collaborating with the RISC-V community to fix potential bugs and improve performance.



If you work with IoT, robotics, or build high-load systems on non-standard processors, now is the time to try Go on RISC-V. And for those just getting acquainted with the language, this is a great reason to study

Recommended Libraries