Prerequisites
This document outlines the requirements needed to build and run helios. Ensure all prerequisites are met before attempting to build the project.
System Requirements
Operating System
- Windows 10/11 (x64)
- Linux (Ubuntu 20.04+, Fedora 35+, or equivalent)
- macOS 11+
Processor
- Support for C++23 features and module compilation
- x64 architecture recommended
Required Software
CMake
- Minimum version: 4.0
- Installation:
- Windows: Download from cmake.org or use package managers (Chocolatey, Scoop)
- Linux:
sudo apt install cmake(Ubuntu) or equivalent for your distribution - macOS:
brew install cmake
Compiler
The project requires a C++ compiler with comprehensive C++23 module support.
Recommended Compilers
Windows
- MSVC 2022 (Visual Studio 2022 v17.4+)
- Supports C++23 modules out of the box
- Download: Visual Studio Community
- Required workload: "Desktop development with C++"
Linux
- GCC 13+ (with C++23 module support)
sudo apt install g++-13(Ubuntu)sudo dnf install gcc-toolset-13(Fedora)
- Clang 16+ (with C++23 module support)
sudo apt install clang-16(Ubuntu)sudo dnf install clang-tools-extra-16(Fedora)
macOS
- Clang 16+ (bundled with Xcode 14.3+)
- Install Xcode Command Line Tools:
xcode-select --install - Or install full Xcode from the App Store
- Install Xcode Command Line Tools:
Compiler Version Check
Verify your compiler version:
# MSVC
cl.exe /?
# GCC
g++ --version
# Clang
clang++ --version
Build Tool
Choose one:
-
Ninja (recommended for faster builds)
sudo apt install ninja-build(Linux)brew install ninja(macOS)- Windows: Download from ninja releases
-
Visual Studio 2022 (Windows only, includes its own build system)
-
GNU Make (typically pre-installed on Linux/macOS)
OpenGL
- OpenGL 4.5+ support required
- GPU driver with OpenGL 4.5+ support
- Most modern GPUs (NVIDIA, AMD, Intel) support this
Optional Software
Testing & Quality Assurance
- CTest (included with CMake)
- clang-format (for code formatting)
sudo apt install clang-format(Linux)brew install clang-format(macOS)- Included with Visual Studio (Windows)
Documentation
- Doxygen (for API documentation)
- Download from doxygen.org
Version Control
- Git (recommended, required for cloning the repository)
- Download from git-scm.com
Verification
Step 1: Verify CMake
cmake --version
Expected output: cmake version 4.0 or higher
Step 2: Verify Compiler
# MSVC (Windows)
cl.exe /?
# GCC/Clang
g++ --version
# or
clang++ --version
Ensure version meets the minimum requirement for C++23 modules.
Step 3: Verify C++23 Module Support
Create a test file test_modules.cpp:
// Test C++23 module compilation
int main() {
return 0;
}
Compile with your compiler:
# MSVC
cl.exe /std:c++latest /EHsc test_modules.cpp
# GCC
g++-13 -std=c++23 test_modules.cpp
# Clang
clang++-16 -std=c++23 test_modules.cpp
If compilation succeeds, your compiler supports C++23.
Platform-Specific Setup
Windows (MSVC)
- Install Visual Studio 2022 Community Edition
- During installation, select "Desktop development with C++"
- Install CMake (or use Visual Studio's integrated CMake support)
- Install Ninja (optional, for faster builds)
# Verify setup
cmake --version
cl.exe /?
Linux (Ubuntu 20.04+)
# Install dependencies
sudo apt update
sudo apt install cmake g++-13 ninja-build git
# Verify
cmake --version
g++-13 --version
Linux (Fedora)
# Install dependencies
sudo dnf install cmake gcc-toolset-13 ninja-build git
# Enable GCC 13
scl enable gcc-toolset-13 bash
# Verify
cmake --version
g++-13 --version
macOS
# Install Xcode Command Line Tools
xcode-select --install
# Install dependencies via Homebrew
brew install cmake ninja
# Verify
cmake --version
clang++ --version
Troubleshooting
"CMake Error: cmake version required is 4.0 and above"
- Update CMake to version 4.0 or higher
"C++23 module support not available"
- Update your compiler to a version that supports C++23 modules (see recommended versions above)
"OpenGL headers not found"
- On Linux, install development headers:
sudo apt install libgl1-mesa-dev
Build fails with module compilation errors
- Ensure your compiler is up-to-date and supports C++23
- Clear your build directory:
rm -rf buildand reconfigure
Additional Resources
Next Steps
Once all prerequisites are installed, proceed with the Quick Start guide.