Skip to content
Snippets Groups Projects
CentOS.md 2.05 KiB
Newer Older
  • Learn to ignore specific revisions
  • Gus Grubba's avatar
    Gus Grubba committed
    ## Building QGC on a stock CentOS:
    
    These were the options used to setup a CentOS development system. Use it as a guideline.
    
    Once the system is fully installed and running, we need to set it up for QGC development. First, we need to update GStreamer to a more recent version. This guide follows Alice Wonder's tips found here: https://media.librelamp.com
    
    #### Update to a more current GStreamer
    ```
    sudo yum install epel-release
    wget http://awel.domblogger.net/7/media/x86_64/awel-media-release-7-6.noarch.rpm
    sudo yum localinstall awel-media-release-7-6.noarch.rpm
    sudo yum clean all
    sudo yum update
    sudo yum install gstreamer1*
    ```
    Make sure these are installed (vaapi for Intel GPUs)
    ```
    sudo yum install gstreamer1-vaapi
    sudo yum install gstreamer1-libav
    ```
    
    #### Installing SDL2
    
    SDL2 is used for joystick support.
    
    ```
    sudo yum install SDL2
    sudo yum install SDL2-devel
    ```
    
    #### Installing Qt
    
    mkdir ~/devel
    cd ~/devel
    
    Install Qt 5.12.4 from the Qt installation script which can be downloaded [here](https://www.qt.io/download-thank-you?os=linux&hsLang=en). Once downloaded, make it executable and run it:
    ```
    chmod +x qt-unified-linux-x64-3.1.1-online.run
    ./qt-unified-linux-x64-3.1.1-online.run
    ```
    
    Select the following options and install it under ~/devel/Qt
    
    #### Clone and Build QGC
    ```
    git clone --recursive https://github.com/mavlink/qgroundcontrol.git
    mkdir build
    cd build
    ```
    For a debug/test build:
    ```
    ../Qt/5.12.4/gcc_64/bin/qmake ../qgroundcontrol/qgroundcontrol.pro -spec linux-g++ CONFIG+=debug
    ```
    For a release build:
    ```
    ../Qt/5.12.4/gcc_64/bin/qmake ../qgroundcontrol/qgroundcontrol.pro spec linux-g++ CONFIG+=qtquickcompiler
    ```
    Build it: (use the appropriate number of CPU cores for you machine)
    ```
    make -j32
    ```
    
    You can alternativelly launch QtCreator (found under `~/devel/Qt/Tools/QtCreator/bin/qtcreator`), load the `qgroundcontro.pro` project and build/debug from within its IDE.
    
    #### Running QGC
    Before launching QGC, you need to make sure the current user has access to the dialout group (serial port access permission):
    ```
    sudo usermod -a -G dialout $USER
    ```