Name Version Notes


5.11.1 or later

QtWebEngine should be buildable with older versions of Qt. Please use the latest version.


Version 1.66

Components: program_options


Version 0.48


Requirement of meson


Requirement both of meson, and some scripts in tools/

A compiler

C++17 support

gcc 7+; clang 4+; on Windows only MSVC is supported due to QtWebEngine


Only for building manpage

Building from source

In short, the generic cmake build loop of 'cmake, make, make install' will generate a makefile, build the program and install it.

# clone the repository
git clone smolbote.git
cd smolbote.git

# These two submodules are required
git submodule init
git submodule update 3rd-party/SingleApplication/SingleApplication.git
git submodule update tools/Kconfiglib

# generate
mkdir build
meson build

# make

Configuring smolbote

smolbote uses Kconfig to store and customize default application settings such as keyboard shortcuts and paths. You can edit these settings by running tools/Kconfiglib/ in the repository root.

When building, tools/ is used to load platform-name/.config and generate a header file.

Configuring meson

Run meson configure in the build directory to list available options.

Use meson configure -Doption=value change them. Ninja will regenerate its build file on next run.

See the meson documentation for more information on how to use meson.

Building on Windows

set INSTALL_DIR="C:\projects\smolbote-install"

mkdir C:\projects\smolbote-build
cd C:\projects\smolbote-build

set QT="C:\Qt\5.11\msvc2017_64"
set BOOST_ROOT="C:\Libraries\boost_1_66_0"
set BOOST_LIBDIR="C:\Libraries\boost_1_66_0\lib64-msvc-14.1"

cmake  -G "Visual Studio 15 2017 Win64" -DCMAKE_BUILD_TYPE=Release

cmake --build . --target poi --config Release
cmake --build . --target install --config Release
C:\Qt\5.11\msvc2017_64\bin\windeployqt.exe bin\poi.exe

7z a C:\projects\smolbote\build.7z %INSTALL_DIR%