Qt Creator Instructions
Dependencies
Memoria relies on third-party libraries that either may not be available on supported developenment platfroms or have outdated versions there. Vcpkg package manager is currently being used for dependency management. Memoria itself is avaialble via custom Vcpkg registry. Conan recipies and source packages for Linux distributions (via CPack) may be provided in the future.
See the Dockerfile on how to configure development environment on Ubuntu 22.04. Standard development environment will be the latest Ubuntu LTS.
Install VCPkg for Memoria
$ cd /path/to/checout/vcpkg/into
$ git clone https://github.com/microsoft/vcpkg.git
For now, supporting compiler is Clang. Gcc 10/11/12 are crashing on Memoria. Gcc 13.1 is known to work.
Configuring VCPkg’s provided cmake tool
In Options/Kits/Cmake tab add another cmake configuration by specifying full path VCPkg’s own cmake distribution.
Configure Required clang compiler
Memoria currently is built with clang compiler version 6.0 or newer. If you system already provides it, like most Linux distributions do, then this step is unnecessary. Otherwise, build clang yourself and configure it on the Options/Kits/Compiler tab:
Add new Kit for Clang
Adding new Kit is necessary if QtCreator did not recognize clang compiler automatically. Just create new kit by cloning and existing one and specify clang 17 as C and C++ compilers:
VCPkg’s Cmake Selection
Now specify that VCPkg’s provided cmake tool will be used for new Kit, and specify the path to VCPkg’s libraries definitions:
Provide your full path to vcpkg.cmake:
Configure Memoria’s build parameters
Toggle BUILD_* options as specified on the screenshot. This will build Tests, as well as threads- and fibers-based Memoria allocators, with libbacktrace support in case of exceptions.
More details on build options can be found in top-level CMakeLists.txt
That’s it!
Press Ctrl+B to start build process.