# Setting Up a Development Environment - [Environment Requirements](#section1724111409282) - [Hardware](#section185788208272) - [Software](#section383442213405) - [Build Tools for Linux](#section11111412465) - [Development Tools for Windows](#section11161833102716) - [Installing the Basic Compilation Environment](#section7813043104310) - [Connecting to a Linux Server](#section111021456154718) - [Changing Linux Shell to Bash](#section980212574810) - [Installing a Python Environment](#section918195118487) - [Installing a File Packing Tool](#section145881557185214) - [Installing Compilation Tools](#section7227629152013) - [Installing gn](#section119641436125219) - [Installing ninjah](#section96781928145213) - [Installing the LLVM Toolchain](#section667822819521) - [Installing hc-gen](#section201517625210) - [Installing the IDE Development Tool](#section188621583120) ## Environment Requirements ## Hardware - Linux server - Windows workstation \(host computer\) - Hi3518EV300 IoT camera development board - USB-to-serial cable and network cable \(The Windows workstation is connected to the Hi3518EV300 development board through the USB-to-serial cable and network cable.\) [Figure 1](#fig8211468392) shows the hardware connections. **Figure 1** Hardware connections  ## Software **Table 1** Platforms required for the Hi3518EV300 development board
Ubuntu 16.04 64-bit or later is used for the Linux OS, and bash is used as the shell. |
You can develop programs on the Windows workstation or on the Linux server through remote login. |
||
Functions as the integrated development environment (IDE) to provide code compilation, burning, and debugging. C and C++ languages are supported. |