Skip to content

SDL on Linux with QT

Jacob Keeler edited this page Apr 23, 2018 · 8 revisions

DEPRECATED: The QT HMI was officially removed from SDL Core in Release 4.5.0

QT 5.1.0

SDL uses version 5.1.0 of QT if SDL is not running on QNX (it uses 4.8.5 on QNX). To install QT 5.1.0 on 64 bit Linux follow the steps below

cd ~/Downloads
wget https://download.qt.io/official_releases/qt/5.1/5.1.0/qt-linux-opensource-5.1.0-x86_64-offline.run
chmod a+x qt-linux-opensource-5.1.0-x86_64-offline.run
sudo ./qt-linux-opensource-5.1.0-x86_64-offline.run

At this point follow the on screen instructions to install all of the QT 5.1.0 components.

After the installation is complete update the database used by locate so that CMake can immediately find QT.

sudo updatedb

Build and Run

In your build folder run

cmake -DHMI=qt -DHMI2=ON ../path/to/sdl/
make && make install

If cmake cannot find any of the QT5 modules, try installing the following dev libraries.

sudo apt-get install qt5-default qtdeclarative5-dev qttools5-dev qtbase5-dev

If make cannot find autoheader you'll need to sudo apt-get install autoconf.

After make install finishes cd into the bin/ directory and start smartdevicelink using

LD_LIBRARY_PATH=. ./smartdevicelink

If dbus cannot find a machine-id then you can run dbus-uuidgen and copy the output to /etc/machine-id.