Switch branches/tags
Find file History


Mapbox Maps SDK for Qt

Circle CI build status AppVeyor CI build status


This is the foundation for the Mapbox GL plugin available in the Qt SDK since Qt 5.9. Use the Qt bugtracker for bugs related to the plugin and this GitHub repository for bugs related to Mapbox GL Native and the Qt bindings.

You should build this repository if you want to develop/contribute using the low level Qt C++ bindings or want to contribute to the Mapbox GL Native project using the Qt port for debugging.

See the Mapbox Qt landing page for more details: https://www.mapbox.com/qt/

Build dependencies


For Linux (tested on Ubuntu) desktop, together with these build instructions, you also need:

$ sudo apt-get install qt5-default


For macOS desktop, you can install Qt 5 via Homebrew:

$ brew install qt5

Since Homebrew doesn't add Qt to the path, you'll have to do that manually before running any Make target:

export PATH=/usr/local/opt/qt5/bin:$PATH


The Windows build will assume you have installed and on the default path:

At runtime, you will also need installed:

QNX 7.0

To build for QNX 7.0, you need to install the QNX Software Development Platform (SDP) on a Linux host.


After installing the SDP, you need to source the QNX environment script:

source <SDP_DIRECTORY>/qnxsdp-env.sh

You also need to Build Qt for QNX.


After building Qt for QNX, you need to add Qt installation's bin directory to the path.


Build instructions

Public API headers can be found in the platform/qt/include directory.

Linux and macOS

QMapboxGL example application

$ make qt-lib      # Will build libqmapboxgl.so
$ make qt-app      # Will build the test app and libqmapboxgl.so if not built yet
$ make run-qt-app  # Will build and run the test app


The Windows build bot will publish MSVC 2015 compatible binaries and headers on every build at the artifacts tab. These binaries can be downloaded and used right away.

In case of building from the sources:

$ mkdir build
$ cd build
$ cmake -G "Visual Studio 14 2015 Win64" -T LLVM-vs2014 -DMBGL_PLATFORM=qt -DWITH_QT_DECODERS=ON -DWITH_QT_I18N=ON -DWITH_NODEJS=OFF ..
$ cmake --build . --config Release --target qmapboxgl -- /m

QNX 7.0

Building the repository for QNX 7.0 is very similar to other platforms (e.g. Linux and macOS).

$ make qnx-qt-lib      # Will build libqmapboxgl.so