A cross-platform, header-only C++23 library for working with geospatial data.
- geometry — Boost.Geometry wrapper and extensions: WKB conversion, raster algorithms
- db — type-safe database access (commands, rowsets, variants, reflection)
- sql — SQL dialect abstraction (MySQL, ODBC, PostgreSQL/PostGIS, SQLite/SpatiaLite)
- gdal — GDAL/OGR wrappers for raster and vector I/O
- gui — Qt and wxWidgets providers for map rendering and tile caching
API reference. Generate it locally with
doxygen Doxyfile.
A micro GIS application built on top of the boat library — browse, inspect and copy geospatial data from a variety of sources.
Ubuntu
sudo dpkg -i ugis.ubuntu-26.04.deb
sudo apt-get install -f
ugisWindows
Extract the archive and run:
ugis.exeUbuntu
sudo apt-get install --yes --no-install-recommends \
gcc-15 \
g++-15 \
git \
make \
pkg-config \
qmake6 \
qt6-base-dev \
libboost-dev \
libcurl4-openssl-dev \
libgdal-dev \
libjpeg-dev \
default-libmysqlclient-dev \
libpng-dev \
libpq-dev \
libspatialite-dev \
libsqlite3-dev \
libtbb-dev \
odbc-postgresql \
unixodbc-devWindows
Install the following:
- Visual Studio 2026 (MSVC, NMake)
- Git
- Qt 6 (MSVC 64-bit)
- Boost (headers only)
- OSGeo4W — GDAL, libcurl, libjpeg, libmysql, libpng, libpq, libspatialite, sqlite3, zlib (development packages)
Run the following commands from the x64 Native Tools Command Prompt for Visual Studio 2026:
set INCLUDE=C:\boost_1_91_0;C:\OSGeo4W\include;%INCLUDE%
set LIB=C:\OSGeo4W\lib;%LIB%
set PATH=C:\Qt\6.10.3\msvc2022_64\bin;C:\OSGeo4W\bin;%PATH%
set QT_PLUGIN_PATH=C:\Qt\6.10.3\msvc2022_64\pluginsUbuntu
git clone --depth=1 https://github.com/storm-ptr/boat.git
cd boat/example/ugis
qmake6 ugis.pro QMAKE_CC=gcc-15 QMAKE_CXX=g++-15
make --jobs="$(nproc)"Windows
git clone --depth=1 https://github.com/storm-ptr/boat.git
cd boat\example\ugis
qmake
nmakeThe executable is placed in release\ugis.exe.