Installation

Prerequisites

Requirement Minimum Version
C++ Compiler GCC 13+ or Clang 16+
CMake 3.20+
Conan 2.x
Ninja 1.10+ (recommended)

Build from Source

1. Clone the Repository

git clone https://github.com/LessUp/fq-compressor.git
cd fq-compressor

2. Install Dependencies via Conan

# Using Clang (recommended)
conan install . --build=missing \
  -of=build/clang-release \
  -s build_type=Release \
  -s compiler.cppstd=20

# Using GCC
conan install . --build=missing \
  -of=build/gcc-release \
  -s build_type=Release \
  -s compiler.cppstd=20

3. Configure and Build

# Clang Release
cmake --preset clang-release
cmake --build --preset clang-release -j$(nproc)

# GCC Release
cmake --preset gcc-release
cmake --build --preset gcc-release -j$(nproc)

4. Verify Installation

# Run tests
./scripts/test.sh clang-release

# Or via CTest
ctest --test-dir build/clang-release

The binary will be at build/<preset>/src/fqc.

Dependencies

fq-compressor relies on the following libraries, all managed automatically by Conan:

Library Version Purpose
Intel oneTBB 2022.3.0 Parallel pipeline processing
CLI11 2.4.2 Command-line argument parsing
quill 11.0.2 High-performance logging
zlib-ng 2.3.2 General compression backend
zstd 1.5.7 General compression backend
libdeflate 1.25 Fast DEFLATE implementation
fmt latest String formatting

Docker (Dev Container)

A dev container configuration is provided for VS Code / CLion:

# VS Code
# Open the project folder, then use "Reopen in Container"

# Manual Docker build
docker build -f .devcontainer/Dockerfile -t fq-compressor-dev .
docker run -it -v $(pwd):/workspace fq-compressor-dev

Troubleshooting

Conan profile not found

conan profile detect --force

CMake preset not found

Make sure you ran conan install first — it generates the CMake toolchain files that presets depend on.

TBB not found on macOS

brew install tbb

results matching ""

    No results matching ""