Files
resonance-engine/scripts/setup_wsl_cuda.sh
T

48 lines
1.8 KiB
Bash
Raw Normal View History

#!/bin/bash
# WSL2 CUDA + Dependencies Setup for LBM Daemon
# Run inside WSL: bash /mnt/d/Resonance_Engine/beast-build/setup_wsl_cuda.sh
set -e
echo "=== WSL2 CUDA SETUP FOR LBM DAEMON ==="
echo ""
# Step 1: CUDA repo pin
echo "[1/5] Setting up CUDA repository..."
wget -q https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin -O /tmp/cuda-wsl-ubuntu.pin
sudo mv /tmp/cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
# Step 2: Add CUDA keyring (network repo - simpler than .deb for WSL)
wget -q https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.1-1_all.deb -O /tmp/cuda-keyring.deb
sudo dpkg -i /tmp/cuda-keyring.deb
# Step 3: Install CUDA toolkit + dependencies
echo "[2/5] Updating package list..."
sudo apt-get update -qq
echo "[3/5] Installing CUDA toolkit..."
sudo apt-get install -y cuda-toolkit-12-6
echo "[4/5] Installing ZeroMQ and json-c..."
sudo apt-get install -y libzmq3-dev libjson-c-dev
echo "[5/5] Setting up PATH..."
# Add CUDA to PATH for this session and permanently
export PATH=/usr/local/cuda-12.6/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-12.6/lib64:$LD_LIBRARY_PATH
# Make persistent
if ! grep -q "cuda-12" ~/.bashrc 2>/dev/null; then
echo 'export PATH=/usr/local/cuda-12.6/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.6/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
echo " Added CUDA to ~/.bashrc"
fi
echo ""
echo "=== VERIFICATION ==="
echo -n "nvcc: "; nvcc --version 2>&1 | grep "release" || echo "NOT FOUND"
echo -n "zmq: "; dpkg -l libzmq3-dev 2>/dev/null | grep -c "ii" && echo "OK" || echo "NOT FOUND"
echo -n "json-c: "; dpkg -l libjson-c-dev 2>/dev/null | grep -c "ii" && echo "OK" || echo "NOT FOUND"
echo ""
echo "=== READY TO COMPILE ==="
echo "Next: bash scripts/compile.sh"