---
title: Qt6アプリケーションでMapLibreを使う
tags: 
author: [watatuki](https://convert.docswell.com/user/watatuki)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/L718G8Z4JG.jpg?width=480
description: Qt6アプリケーションでMapLibreを使う by watatuki
published: December 22, 25
canonical: https://convert.docswell.com/s/watatuki/537X3M-2025-12-22-025200
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/L718G8Z4JG.jpg)

Qt6アプリケーションでMapLibreを使う


# Page. 2

![Page Image](https://bcdn.docswell.com/page/G7WZKZ9Z72.jpg)

MapLibreの由来
• Mapboxがオープンソース開発を停止した時に、それを
フォークして独自進化を開始したのがMapLibre
• Mapboxはカスタマイズ性の高い地図描画を武器に
地図サービスを展開している企業
•
ソフトウェアの名前もMapbox
• Mapboxのver.1はオープンソース開発されており、
Mapbox地図サーバへのアクセスに課金する方式
だった
•
開発者ライセンスで、一定回数までは無償アクセスできた
• Mapbox ver.2の開発を始める時点でオープンソース
開発と終了した
• Mapboxは、カーナビゲーションなどの地図を利用し
たサービスも行うようになっている


# Page. 3

![Page Image](https://bcdn.docswell.com/page/4JZ1Z19LE3.jpg)

MapLibreとは
• 自由なマッピングライブラリの開発と提供を目的とした
プロジェクト
• LFのプロジェクト同様に組織化されており、運営委員
会がある
• 地図の描画エンジンだけでなく、地図データの配信
サーバ(タイルサーバ)等の開発も行っている
• LibreOfficeと同じLibreなので関係があるか
LibreOfficeの榎さんに聞いてみたが、自由という意味
のLibreを使っているだけで、関係はないらしい


# Page. 4

![Page Image](https://bcdn.docswell.com/page/YE6LZLKM7V.jpg)

MapLibreで何をしたかったのか？
• 某コミュニティのリファレンスアプリケーションで、Mapbox
を使ったカーナビゲーションぽいものを作っていた
• 開発にはQtをしており、地図表示にはQt Locationの
Mapboxプラグインを利用していた
• Qt5からQt6になったときに、Mapboxのサポートがなく
なった
• 某コミュニティがQt5.15をしばらく使い続けた関係で
気づいていなかった
• Qt6でもOSMプラグインが残っていたので使っていたが、
見た目がいまいち
• 見た目の良いMapLibreに移行したくなった
Mapboxのナビっぽいもの


# Page. 5

![Page Image](https://bcdn.docswell.com/page/GE51W1PQJ4.jpg)

MapLibre移行
• MapLibreのどのコンポーネントを使う
か？
• Maplibreのorgには54リポジトリが登録され
ている
• JavaScript向けのmaplibre-gl-js等さまざま
なバリエーションがある
• 元のカーナビゲーションぽいものがQt(QML)
で書かれているので、それにあわせたい
• 調査の結果、maplibre-native-qtを使う
ことに決定


# Page. 6

![Page Image](https://bcdn.docswell.com/page/9721Q16WER.jpg)

MapLibre移行
• Yocto(5.0)+Qt6.7.3でmaplibre-native-
qtのビルドにチャレンジ
• ビルドエラー発生し、コンパイルオプション変更
https://github.com/AGLExport/metamaplibre/blob/dev-v1/dynamic-layers/metaqt6/recipes-maplibre/maplibre-nativeqt/maplibre-native-qt_4.0.bb
で対処
• ビルドはできたものの、ファイルのインストールパ
スが/qmlや/pluginになってしまう問題が発生
• 原因はわかったのでissueを投げたもののなかなかな
おらず
• 一年経過….
• OSS仲間(Qtﾁｮｯﾄﾃﾞｷﾙ)がMapLibreにチャレンジし
始めたので、改めてトライし対応完了
•
Qt Baseでsqliteやnetwork機能が無効になっていて、最初
動かなかった問題はあった…
https://github.com/maplibre/maplibrenative-qt/issues/179


# Page. 7

![Page Image](https://bcdn.docswell.com/page/DJYZWZ99EM.jpg)

MapLibre移行
• Qt6用のmaplibre-native-qtは地図描画機能を提供している
地図データのダウンロード先はstyleで設定
• 地図の見た目の設定(スタイル)とダウンロードサーバを探さないといけ
ない
•
• 日本のOpenStreetMapコミュニティがサーバを提供しいたので
使わせてもらうことにした


# Page. 8

![Page Image](https://bcdn.docswell.com/page/V7N393LD78.jpg)

MapLibre移行
• QtのLocationプラグインはよくでき
ているので、ちょい変更で切り替え
できた
• 基本これだけ
• プラグインのインスタンス名を変えたの
で、あと1行変更がある


# Page. 9

![Page Image](https://bcdn.docswell.com/page/YJ992948J3.jpg)

Maplibre移行
• どうなったのか、現物は会場で！！！


# Page. 10

![Page Image](https://bcdn.docswell.com/page/GJ8959QZED.jpg)

まとめ
• Qt6のアプリケーションで地図を表示するためのライブラリとして、
MapLibreにトライした
• Qt6用のMapLibre実装maplibre-native-qtをインテグに成功
• 1年前にバグレポート投げたけど直してもらえてなかった不具合は、Qtﾁｮｯﾄﾃﾞ
ｷﾙ人がPR投げてくれた
• 地図サーバはopenstreetmap.jpが提供しているものを利用
• アプリのQMLはプラグイン差し替えで良いのでちょい変で対応完了
• 今回はスタイルはopenstreetmap.jpのものをそのまま使ったので、この
カスタマイズが今後の課題


