Building from Source

Build NIKOLA Chess Engine from source. The build system automatically downloads the MIND compiler and runtime.

System Requirements

Linux

  • Ubuntu 20.04+
  • x64 with AVX2
  • 4 GB RAM minimum
  • 500 MB storage

macOS

  • macOS 12+
  • Intel or Apple Silicon
  • 4 GB RAM minimum
  • 500 MB storage

Windows

  • Windows 10+
  • x64 with AVX2
  • 4 GB RAM minimum
  • 500 MB storage

Quick Build

The build system automatically downloads the MIND compiler and runtime libraries:

git clone https://github.com/star-ga/NikolaChess.git
cd NikolaChess
make setup
make release

Build Targets

make releaseDefault

Build optimized release binary with auto-detected GPU backend.

make cuda

Build with NVIDIA CUDA backend for RTX/Tesla/Quadro GPUs.

make metal

Build with Metal backend for Apple Silicon (M1/M2/M3/M4).

make rocm

Build with ROCm backend for AMD GPUs (RX 7000, MI series).

make cpu

Build CPU-only version with AVX2/AVX-512 SIMD optimization.

GPU Requirements

For GPU-accelerated builds:

  • NVIDIA (CUDA) - GPU with CUDA 11.0+ support, driver 450.0+, 4GB+ VRAM
  • AMD (ROCm) - RX 7000 series or MI200/MI300 with ROCm 5.0+
  • Apple (Metal) - M1 or later Apple Silicon

Build Output

After a successful build, the executable will be in the project root:

  • nikola-cuda - NVIDIA GPU version
  • nikola-metal - Apple Silicon version
  • nikola-rocm - AMD GPU version
  • nikola-cpu - CPU-only version

Verify the Build

./nikola-cuda --version

Manual Compiler Installation

If you prefer to install the MIND compiler manually:

Linux / macOS
curl -fsSL https://mindlang.dev/install.sh | bash
Windows
irm https://mindlang.dev/install.ps1 | iex

Troubleshooting

  • make: command not found - Install build-essential (Linux) or Xcode Command Line Tools (macOS)
  • CUDA errors - Verify CUDA toolkit version matches your driver with nvidia-smi
  • Out of memory - Reduce parallel jobs with make release -j4
  • AVX2 not supported - Your CPU is too old; use a newer system or try WSL2
UCI ConfigurationNeural Network