Logo

Cake Planner

Backend

Build Process & Development Guide

This guide explains how to build the Cake Planner Backend from source and how to package it as an AppImage.


Table of Contents


Prerequisites

The project requires a modern Linux environment with C++23 support.

System Requirements

Installing Dependencies (Ubuntu/Debian)

sudo apt update
sudo apt install build-essential cmake git
sudo apt install qt6-base-dev libqt6sql6-sqlite libssl-dev

Building from Source

The project uses CMake as its build system.

  1. Clone the Repository:
    git clone https://github.com/Zheng-Bote/cake-planner-backend.git
    cd cake-planner-backend
  1. Create a Build Directory:
mkdir build
cd build
  1. Configure the Project:
cmake ..

Note: Dependencies like Crow, spdlog, etc., are automatically fetched via CMake FetchContent.

  1. Compile:
make -j$(nproc)
  1. Run:
./CakePlanner

creating an AppImage

The project includes a script to package the application as a standalone AppImage.

Script: create_appimage.sh

This script automates the following steps:

  1. Rebuilds the project in Release mode.
  2. Creates an AppDir structure.
  3. Copies binaries, icons, and .desktop files.
  4. Downloads linuxdeploy and the qt-plugin.
  5. Generates the final .AppImage file.

Usage

Run the script from the project root:

chmod +x create_appimage.sh
./create_appimage.sh

Result

After successful execution, you will find CakePlanner-x86_64.AppImage in the root directory. You can run it directly:

./CakePlanner-x86_64.AppImage

Note: AppImages require FUSE to run. On newer Ubuntu versions (22.04+), you might need to install libfuse2: sudo apt install libfuse2