@@ -28,29 +28,39 @@ A set of common tools and a toolchain for the hardware you target needs to be in
2828
2929### Choosing an Operating System for the Development PC
3030
31- Most of the RIOT OS developers are using Linux on their development PCs, so you can expect the
32- most streamlined experience here. Other POSIX-compliant OSes such as the various BSD flavours
31+ #### Linux
32+
33+ Most of the RIOT OS developers are using Linux on their development PCs, so
34+ you can expect the most streamlined experience here.
35+ Not all distributions have packages for cross-compilation for microcontrollers
36+ and non-x86 platforms such as ARM.
37+ Ubuntu works well for cross-development, Fedora for example does not provide
38+ the necessary packages.
39+ However, with most distributions, you can use the
40+ [ RIOT Docker container] (@ref build-in-docker) as an alternative.
41+
42+ Other POSIX-compliant OSes such as the various BSD flavours
3343will also be fine - however, we rely on users to report bugs regarding tooling incompatibilities
3444here. So expect occasional issues for the development branch and please help testing during the
3545feature freeze period, if you develop on macOS or BSD.
3646
37- Windows users can refer to [ this guide ] [ dev-setup-windows ] to
38- [ setup the development environment ] [ dev-setup-windows ] on Windows.
39-
40- [ dev-setup-windows ] : https://github.com/RIOT-OS/RIOT/tree/master/doc/ guides/setup-windows
41-
42- Native development on macOS machines is not officially supported. What works well is using Linux
43- in a virtual machine, but at much lower performance than running Linux natively. We also offer Docker images.
44- For development on Windows, using the
45- [ Windows Subsystem for Linux (WSL) ] ( https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux )
46- is a good option
47- ( [ installation instructions here ] ( https://docs.microsoft.com/en-us/windows/wsl/install ) ), but it
48- is (as of October 2021) not possible to directly access USB devices from Linux. As a result,
49- accessing the serial connection to a board running RIOT, flashing it, and on-chip-debugging from WSL
50- will not be possible. (It is possible to pass through the file system of USB storage device. This
51- should allow flashing boards that have an [ UF2 compatible ] ( https://github.com/Microsoft/uf2 ) from
52- within WSL, but this has not been tested yet.) Hence, WSL users will have to use native Windows
53- tools for accessing the serial connection and flashing the board.
47+ #### Windows
48+
49+ Windows users can refer to [ this guide ] [ dev-setup-windows ] to setup the
50+ development environment on Windows which guides through the process of
51+ setting up the
52+ [ Windows Subsystem for Linux (WSL) ] ( https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux ) .
53+
54+ [ dev-setup-windows ] : https://guide.riot-os.org/getting-started/install-wsl/
55+
56+ #### MacOS
57+ Native development on macOS machines is not officially supported.
58+ Some packages can be found in the homebrew repositories, but the installation
59+ is not trivial, especially for different microcontroller platforms.
60+ As an alternative, the [ RIOT Docker Container ] ( @ ref build-in-docker) can be used
61+ or a virtual machine running Linux. The latter option has a significant
62+ performance reduction compared to Docker.
63+
5464
5565### Common Tools
5666
0 commit comments