3.0 KiB
3.0 KiB
Building OrbitHub (C++ / Qt6 Widgets)
Run all commands from the repository root unless noted.
Requirements
Minimum toolchain requirements on all platforms:
- CMake 3.21+
- C++17 compiler toolchain
- Qt 6.2+ with
WidgetsandSqlmodules (dynamic linking) - OpenSSH client available on
PATH(required for SSH sessions)
Linux (Ubuntu / Mint)
sudo apt update
sudo apt install -y \
build-essential cmake ninja-build git pkg-config \
qt6-base-dev qt6-base-dev-tools qt6-tools-dev qt6-tools-dev-tools \
openssh-client libssl-dev zlib1g-dev
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build
./build/orbithub
macOS (Homebrew)
xcode-select --install
brew update
brew install cmake ninja pkg-config qt@6 openssh openssl@3
cmake -S . -B build -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH="$(brew --prefix qt@6);$(brew --prefix openssl@3)"
cmake --build build
./build/orbithub
Windows 11 (PowerShell + MSVC + vcpkg)
Install required software:
winget install -e --id Git.Git
winget install -e --id Kitware.CMake
winget install -e --id Ninja-build.Ninja
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
winget install -e --id Microsoft.VisualStudio.2022.BuildTools `
--override "--quiet --wait --norestart --add Microsoft.VisualStudio.Workload.VCTools --add Microsoft.VisualStudio.Component.Windows11SDK.22621"
Install dependencies via vcpkg:
git clone https://github.com/microsoft/vcpkg C:\dev\vcpkg
C:\dev\vcpkg\bootstrap-vcpkg.bat
C:\dev\vcpkg\vcpkg.exe install qtbase:x64-windows openssl:x64-windows zlib:x64-windows
Open x64 Native Tools Command Prompt for VS 2022 (or Developer PowerShell), then build:
cmake -S . -B build -G Ninja `
-DCMAKE_BUILD_TYPE=Release `
-DCMAKE_TOOLCHAIN_FILE=C:/dev/vcpkg/scripts/buildsystems/vcpkg.cmake `
-DVCPKG_TARGET_TRIPLET=x64-windows
cmake --build build
Run (ensures DLL paths from vcpkg are present):
C:\dev\vcpkg\vcpkg.exe env --triplet x64-windows -- .\build\orbithub.exe
If you already have Qt 6 from the Qt installer and do not want vcpkg Qt, you can point CMake at that Qt install with -DCMAKE_PREFIX_PATH=..., but you still need compatible OpenSSL and zlib development libraries for the embedded FreeRDP build.
Notes
- OrbitHub builds vendored
KodoTerm,libvterm, andFreeRDPfromthird_party/. - If Qt is installed in a custom location, pass
-DCMAKE_PREFIX_PATH=/path/to/Qt/6.x.x/<toolchain>to CMake. - Build output executable:
- Linux/macOS:
build/orbithub - Windows:
build\\orbithub.exe
- Linux/macOS:
Linux Packaging
Build a Debian package (.deb) from the current Linux build:
./packaging/linux/build-deb.sh
Output path:
dist/orbithub_<version>_<arch>.deb
Build a Flatpak bundle:
sudo apt-get install -y flatpak flatpak-builder
./packaging/flatpak/build-flatpak.sh
Output path:
dist/flatpak/io.orbithub.OrbitHub.flatpak