You are expected to develop within a Linux environment, therefore you are asked to prepare a working Linux installation on your notebook/PC. A convenient way of using a Linux operating system without reinstalling a notebook/PC is to put it into a virtual machine (or 'guest system'). While there are many different solutions for virtual machines available, we recommend VirtualBox for this purpose. It is available as a free open source tool and thus free of charge. Once VirtualBox is installed on your notebook/PC, install a Linux distribution as a guest system (aka virtual machine; 'virtual' because the Operating system is running inside of an application, i.e. in this case VirtualBox). Regarding the Linux distribution, we recommend the Ubuntu-based distribution Linux Mint because of its broad user base, ease of use, and lightweight desktop environments. In the following, we will discuss the installation of VirtualBox as well as the setup of Linux Mint as a guest system. Feel free to use a different Linux distribution if you know what you are doing.
By the end of this guide you will be able to
Download the latest installer package for your notebook's/PC's operating system from the web page and install it. After the installation, we recommend to also download and install the so-called Extension Pack (also available from the web page), providing - amongst other things - support for USB 2.0 (instead of 1.1 which is shipped with the standard installation package). For detailed installation instructions, please use VirtualBox's online manual. Another resource for help is YouTube, search terms like “virtualbox install” will most likely yield valuable serach results.
After VirtualBox has been installed on your local machine, you can start installing virtual machines inside of VirtualBox. In particular we will now install Linux Mint as a virtual machine. For that purpose we first have to download a Live DVD image of the distribution from the web page. These images are available for different desktop environments. We recommend the Mate 64-bit version, due to its similarity to Windows. Please follow the instructions in this YouTube video, which shows a VirtualBox running on a Windows 7 host system and a Linux Mint being installed as a guest system. Here is another video, showing the general installation of Linux Mint in general rather than in the particular context of VirtualBox or virtual machines.
Important! When you are asked regarding the size of the virtual hard drive, please assign at least 30 GB; also use the 'dynamically allocated' protocol for the virtual hard drive. However, not to worry, the size of the virtual hard drive can be increased at a later point and only the actual amount of disk space used in the virtual machine is required on your disk.
VirtualBox lets you configure the resources the virtual machine has access to. Amongst the most important resources are the number of CPU cores and the amount of system memory. We recommend assigning all cores available on your host system - excluding hyperthreading 'cores' - without execution cap to the guest as well as half the amount of physical memory available to the host. For instance, the following pictures depict the configurations for a quad-core AMD CPU with 8GB of system memory.
Once Linux Mint is installed as a virtual machine, boot it up. It may very well be the case that the desktop resolution of the virtual machine is very small; No need to worry, though, as this is about to change when we install the so called Guest Additions. To do that, please follow the steps depicted in this YouTube video. Note that the YouTube video is based on a Mac OS X host where an OpenSuse Linux guest is installed. The steps, however, are the same, so please follow them. After a reboot, the desktop resolution of your Linux Mint guest should be maximized to fit your physical screen.
Please watch the following YouTube videos for an introduction to Linux Mint (Note that the videos are based on Linux Mint 13, instead of the currently available version 16, but the tutorial is still applicable.):
Important! Please watch the following YouTube videos for a general introduction to Linux:
When you have familiarized yourself with Linux Mint, install the following essential development tools via your software package management system:
Depending on your actual project, you may also want to install the following packages: