> For the complete documentation index, see [llms.txt](https://px4.gitbook.io/px4-user-guide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://px4.gitbook.io/px4-user-guide/development/getting_started/dev_env.md).

# Toolchain Installation

The *supported platforms* for PX4 development are:

* [Ubuntu Linux](/px4-user-guide/development/getting_started/dev_env/dev_env_linux_ubuntu.md) (Recommended)
* [Mac OS](/px4-user-guide/development/getting_started/dev_env/dev_env_mac.md)
* [Windows (10/11)](/px4-user-guide/development/getting_started/dev_env/dev_env_windows_wsl.md)

## Supported Targets

The table below shows what PX4 targets you can build on each OS.

| Target                                                                                                                                                                                                       | Linux (Ubuntu) | Mac | Windows |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------: | :-: | :-----: |
| **NuttX based hardware:** [Pixhawk Series](/px4-user-guide/drone_parts/flight_controller/pixhawk_series.md), [Crazyflie](/px4-user-guide/drone_parts/flight_controller/autopilot_discontinued/crazyflie2.md) |        ✓       |  ✓  |    ✓    |
| **Linux-based hardware:** [Raspberry Pi 2/3](/px4-user-guide/drone_parts/flight_controller/autopilot_experimental/raspberry_pi_navio2.md)                                                                    |        ✓       |     |         |
| **Simulation:** [jMAVSim SITL](/px4-user-guide/development/simulation/jmavsim.md)                                                                                                                            |        ✓       |  ✓  |    ✓    |
| **Simulation:** [Gazebo SITL](/px4-user-guide/development/simulation/sim_gazebo_gz.md)                                                                                                                       |        ✓       |  ✓  |    ✓    |
| **Simulation:** [Gazebo Classic SITL](/px4-user-guide/development/simulation/sim_gazebo_classic.md)                                                                                                          |        ✓       |  ✓  |    ✓    |
| **Simulation:** [ROS with Gazebo Classic](/px4-user-guide/robotics/ros/ros1/ros_interface.md)                                                                                                                |        ✓       |     |         |
| **Simulation:** ROS 2 with Gazebo                                                                                                                                                                            |        ✓       |     |         |

Experienced Docker users can also build with the containers used by our continuous integration system: [Docker Containers](/px4-user-guide/development/test_and_ci/docker.md)

## Next steps

Once you have finished setting up one of the command-line toolchains above:

* Install [VSCode](/px4-user-guide/development/getting_started/dev_env/vscode.md) (if you prefer using an IDE to the command line).
* Install the [QGroundControl Daily Build](https://docs.qgroundcontrol.com/master/en/releases/daily_builds.html)
* Continue to [Building PX4 Software](/px4-user-guide/development/getting_started/building_px4.md).
