Each time you pull new source to your repository you should run `git submodule update` to get the latest submodules as well. Since QGroundControl uses submodules, using the zip file for source download will not work. You must use git.
### Supported Builds
#### Native Builds
QGroundControl builds are supported for OSX, Linux, Windows and Android. QGroundControl uses [Qt](http://www.qt.io) as it's cross-platform support library and uses [QtCreator](http://doc.qt.io/qtcreator/index.html) as it's default build environment.
* OSX: OSX 10.7 or higher, 64 bit, clang compiler
* Ubuntu: 64 bit, gcc compiler
...
...
@@ -32,7 +34,7 @@ QGroundControl builds are supported for OSX, Linux, Windows and Android. QGround
* Android: Jelly Bean (4.1) and higher
* Qt version: 5.5.1 (or higher)
#### Install QT
###### Install QT
You need to install Qt like this instead of using packages from say a Linux distribution because QGroundControl needs access to private Qt headers.
* Download the [Qt installer](http://www.qt.io/download-open-source)
* Ubuntu: Set the downloaded file to executable using:`chmod +x`. Install to default location for use with ./qgroundcontrol-start.sh. If you install Qt to a non-default location you will need to modify qgroundcontrol-start.sh in order to run downloaded builds.
...
...
@@ -40,14 +42,14 @@ You need to install Qt like this instead of using packages from say a Linux dist
* Launch Qt Creator and open the `qgroundcontrol.pro` project.
* Select the appropriate kit for your needs:
* OSX: Desktop Qt 5.5.1 clang 64 bit
...
...
@@ -55,7 +57,16 @@ You need to install Qt like this instead of using packages from say a Linux dist
* Windows: Desktop Qt 5.5.1 MSVC2013 32bit
* Android: Android for armeabi-v7a (GCC 4.9, Qt 5.5.1)
### Additional build notes for all supported OS
#### Vagrant
A Vagrantfile is provided to build QGroundControl using the [Vagrant](https://www.vagrantup.com/) system. This will produce a native Linux build which can be run in the Vagrant Virtual Machine or on the host machine if it is compatible.
* From the root directory of the QGroundControl repository run "vagrant up"
#### Additional build notes for all supported OS
* Warnings as Errors: Specifying `CONFIG+=WarningsAsErrorsOn` will turn all warnings into errors which break the build. If you are working on a pull request you plan to submit to github for consideration, you should always run with this settings turned on, since it is required for all pull requests. NOTE: Putting this line into a file called "user_config.pri" in the top-level directory will set this flag on all builds without interfering with the GIT history.
* Parallel builds: You can use the '-j#' option to run parellel builds.