Installation Guide

Complete installation instructions for AVA Database on Linux and macOS.

System Requirements

Minimum Requirements

  • OS: Linux (Ubuntu 20.04+, CentOS 7+) or macOS 11+
  • CPU: x86_64 architecture, 2+ cores
  • RAM: 4GB minimum, 8GB+ recommended
  • Disk: 500MB for installation, varies by data
  • Compiler: GCC 7+ or Clang 10+ (for building from source)

Quick Install

# Download and run installer
curl -O https://download.avainformatics.com/ava-install.sh
chmod +x ava-install.sh
./ava-install.sh

# Verify installation
ava --version

Building from Source

Prerequisites

# Ubuntu/Debian
sudo apt-get update
sudo apt-get install -y build-essential cmake git \
    libboost-all-dev liblzma-dev python3-dev

# CentOS/RHEL
sudo yum groupinstall "Development Tools"
sudo yum install -y cmake boost-devel xz-devel python3-devel

Build Steps

# Clone repository
git clone https://github.com/avainformatics/ava.git
cd ava

# Configure build
cmake -B build -DCMAKE_BUILD_TYPE=Release

# Build
cmake --build build -j$(nproc)

# Install (optional)
sudo cmake --install build

# Or add to PATH
export PATH=$PWD/build/bin:$PATH

Python API Installation

# Install via pip (recommended)
pip install avapy

# Or build from source
cd api/python
python setup.py build
python setup.py install

# Verify
python -c "import avapy; avapy.version()"

License Configuration

AVA requires a valid license file. Place it in one of these locations:

# Option 1: Current directory
cp ava.license ./

# Option 2: Home directory  
cp ava.license ~/ava.license

# Option 3: System-wide
sudo mkdir -p /etc/ava
sudo cp ava.license /etc/ava/

# Option 4: Environment variable
export AVA_LICENSE_FILE=/path/to/ava.license

Need a License?

Contact info@avainformatics.com for trial or commercial licenses.

Verification

Verify your installation is working:

# Check AVA version
ava --version

# Run test query
echo "SELECT 'Hello AVA' as message" | ava

# Test Python API
python3 << END
import avapy
print("AVA Python API loaded successfully")
avapy.version()
END