Provides Qt example applications and APIs via QMapboxGL
and QQuickMapboxGL
:
QMapboxGL - implements a C++03x-conformant API that has been tested from Qt 4.7 onwards (Travis CI currently builds it using both Qt 4 and Qt 5).
QQuickMapboxGL - implements a Qt Quick (QML) item that can be added to a
scene. Because QQuickFramebufferObject
has been added in Qt version 5.2, we
support this API from this version onwards.
Qt supports many platforms - so far we have been testing our code on Linux and OS X desktops, as well as embedded devices such as Raspberry Pi 3.
If you need to maintain backwards compatibility with prior releases of
Qt, chose QMapboxGL
. Otherwise, go for QQuickMapboxGL
.
Both QMapboxGL
and QQuickMapboxGL
requires a Mapbox access
token at runtime - you need
to provide it by setting the environment variable MAPBOX_ACCESS_TOKEN
:
export MAPBOX_ACCESS_TOKEN=MYTOKEN
QMapboxGL
is a QObject - MapWindow provides an example QGLWidget that contains a QMapboxGL
object. If you use QMapboxGL
in non-standard Qt widgets, make sure to initialize the GL extensions required by Mapbox whenever possible:
QMapbox::initializeGLExtensions();
For Linux (Ubuntu) desktop, together with these build instructions, you also need:
sudo apt-get install qt5-default qtlocation5-dev qtpositioning5-dev \
qml-module-qtquick2 qml-module-qtpositioning qml-module-qtgraphicaleffects \
qml-module-qtquick-layouts qml-module-qtquick-controls
For OS X desktop, you can install Qt 5 via Homebrew:
brew install qt5
We provide the following build targets for our Qt SDK:
make qt-lib
to build the qmapboxgl
shared library. Public API headers
can be found in platform/qt/include folder.
make qt-app
or make run-qt-app
to run the application at the end of
build.
make qt-qml-app
or make run-qt-qml-app
to run the application at the
end of build.