To build Ipponboard, there are currently two recommended development platforms:
Build system | Compiler | Target system |
---|---|---|
Windows 10/11 | Microsoft Visual Studio C++ (last used: VS 2017/2019/2022 a.k.a VC14) | Windows 7 and higher, 32 Bit |
Linux (Ubuntu/WSL) | gcc 11 | Linux 64-Bit (experimental) |
Note: Support for Linux builds is still experimental and may lack some features (sound, printing, gamepad).
Ipponboard requires the following libraries and tools to be built:
- Qt framework (last used: 5.15.x; 6.x not yet supported)
- CMake (last used: 3.29.x)
- Boost C++ Libraries (last used: 1.81)
- Pandoc to build the HTML manual
- Inno Setup to create the setup on Windows (last used: 6.0)
For compilation and configuration of the Qt framework, see the section Building Qt.
Note: Before executing the build script be sure to install all required dependencies like explained in Building on Windows and Building on Linux.
The first run of build.ps1
(build.sh
on Linux) will create a file to configure the paths to the above libraries
> build.ps1
Please configure paths in "env_cfg.bat" first!
Press any key to continue . . .
Modify those according to your environment. After that, you may try building ;)...
> build.ps1
Current config (debug):
QTDIR : c:\devtools\qt5\Qt5.15.13-x86-msvc2022
BOOST_DIR : c:\devtools\boost_1_81_0
ROOT_DIR : c:\dev\_cpp\Ipponboard
BUILD_DIR : c:\dev\_cpp\Ipponboard\_build\build-Ipponboard
BIN_DIR : c:\dev\_cpp\Ipponboard\_bin\Ipponboard-debug
INNO_DIR : c:\Program Files (x86)\Inno Setup 6
Select build mode:
(1) clean ALL
(2) create makefiles
(3) tests only
(4) build all
(5) run Ipponboard
(6) build doc
(7) translate resources
(8) build setup
(9) clean build with setup (release)
(s) switch debug/release
(q) quit
- Install Visual Studio
- Install
cmake
and make sure it's available via%PATH%
- Build Qt5 framework
- Install Boost
- Install Pandoc and make sure it's available via
%PATH%
- Run
build.ps1
from Windows PowerShell
-
Install Python2
winget install python.python.2
-
Get
qt-erverywhere-opensource-src-5.15.*.zip
from https://download.qt.io/official_releases/qt/5.15/ -
Extract archive
-
Configure
-
Open x86 Native Tools Command Prompt for Visual Studio
-
Add to environment path before running
configure.bat
:set PATH=c:\Python27;%PATH%
-
.\configure -prefix Qt5.15.13 -opensource -confirm-license -platform win32-msvc -debug-and-release -shared -silent -nomake examples -nomake tests -no-dbus -schannel -mp
-
-
Compile & link
jom
-
Install in prefix path directory
jom install
-
Install Boost:
- Download the recent version from https://www.boost.org
- Extract the archive (no build required as only headers are used)
- Specify the path in
env.cfg
(see build.sh)
-
Install Pandoc
-
Install development tools (if needed)
sudo apt-get update sudo apt-get install build-essential libgl1-mesa-dev libgstreamer-gl1.0-0 libpulse-dev libxcb-glx0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-sync1 libxcb-util1 libxcb-xfixes0 libxcb-xinerama0 libxcb1 libxkbcommon-dev libxkbcommon-x11-0 libxcb-xkb-dev -y
-
Get
qt-erverywhere-opensource-src-5.15.*.tar.xz
from https://download.qt.io/official_releases/qt/5.15/Note: Be sure to get at least Qt5.15.10 because of incompatibility with OpenSSL runtime library references (see https://bugreports.qt.io/browse/QTBUG-115146, https://gist.github.com/seyedmmousavi/b1f6681eb37f3edbe3dcabb6e89c5d43)
-
Extract the archive:
tar xf /mnt/c/Users/fmuec/Downloads/qt-everywhere-opensource-src-5.15.*.tar.xz
-
Install dependencies (required for audio, printing, and PDF export):
sudo apt get install gperf pkg-config bison flex libdbus-1-dev libasound2-dev libcups2-dev libpulse-dev bison flex
TODO: ??? sudo apt install libpulse-mainloop-glib0 libnss3-dev nodejs python2
-
Configure Qt build
./configure -prefix /usr/local/Qt5.15.13 -opensource -confirm-license -shared -silent -nomake examples -nomake tests -skip qtdoc -skip qtwebengine -openssl-runtime -cups
-
Compile & link
gmake -jX
with X being the number of your processor cores
-
Install
sudo gmake install
-
Get aqt (another qt installer)
pip install -U pip pip install aqtinstall
-
Get the latest Qt version
Check https://ddalcino.github.io/aqt-list-server/ and get the install command:
aqt install-qt linux desktop 5.15.2 gcc_64 aqt install-tool linux desktop tools_cmake
- Download and install QCreator
- Configure the Qt environment
- Open
base/CmakeLists.txt
with QtCreator - Make sure that
QTDIR
points to the respective Qt installation - Add
BOOST_DIR
to the environment variables of the project - Define the boolean key
USE_QT5=ON
if you want to use Qt5 (use Qt4 otherwise)
- Download Windows 10 SDK and be sure to install the Debugging Tools
- Insert the path in the QtCreator debugger options (tab CDB paths): e.g.,
C:\Program Files (x86)\Windows Kits\10\Debuggers\x86
- Restart QtCreator