Installation Guide
Detailed instructions for installing XDL on your system.
Prerequisites
- Rust 1.70 or later - Install Rust
- Python 3.13.0 (optional) - For Python integration features
- Git - For cloning the repository
Optional Dependencies
For full functionality, you may want:
- OpenGL/Vulkan - For GPU acceleration
- Scientific libraries - GSL, NetCDF, HDF5
Building from Source
1. Clone the Repository
git clone https://github.com/TuringWorks/xdl
cd xdl
2. Build the Project
# Build all crates
cargo build --release --workspace
# This will take a few minutes on first build
3. Install the CLI
cargo install --path xdl-cli
4. Verify Installation
xdl --version
Platform-Specific Notes
Linux
# Ubuntu/Debian - install development dependencies
sudo apt-get install build-essential pkg-config libssl-dev
# Fedora/RHEL
sudo dnf install gcc openssl-devel
macOS
# Install Xcode Command Line Tools
xcode-select --install
# Or install via Homebrew
brew install rust
Windows
- Install Rust via rustup
- Install Visual Studio Build Tools
Python Integration Setup
For Python 3.13 integration:
# Ensure Python 3.13 is installed
python3.13 --version
# XDL will automatically detect and use Python 3.13
See Python Integration Guide for details.
GPU Acceleration Setup
For GPU acceleration features:
# Build with GPU support
cargo build --release --features gpu
# Verify GPU support
xdl --features
See GPU Demo Guide for more information.
Troubleshooting
Build Errors
If you encounter build errors:
# Update Rust
rustup update
# Clean and rebuild
cargo clean
cargo build --release
Python Integration Issues
If Python integration doesn’t work:
# Check Python version
python3 --version
# Ensure Python 3.13 development headers are installed
# On Ubuntu/Debian:
sudo apt-get install python3.13-dev
Next Steps
- Quick Start Guide - Your first XDL program
- GPU Demo - Try GPU acceleration
- Examples - Sample code
Development Setup
For development and testing:
# Install pre-commit hooks
pip install pre-commit
pre-commit install
# Run tests
cargo test --workspace
# Run slow tests
./run_slow_tests.sh
# Format and lint
cargo fmt --all
cargo clippy --workspace
See Development Guide for more details.
For complete build documentation, see BUILD_SUCCESS.