mirror of
https://github.com/Heretek-AI/CachyLLama-BUILDER.git
synced 2026-10-12 02:02:33 +00:00
53 lines
1.8 KiB
Bash
Executable File
53 lines
1.8 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# SPDX-License-Identifier: MIT
|
|
# Copyright (c) 2026 Heretek AI
|
|
# =============================================================================
|
|
# CachyLLama-BUILDER: Local Linux Vulkan Build Script
|
|
# =============================================================================
|
|
# Builds fewtarius/CachyLLama with Vulkan (RADV) backend locally on Linux.
|
|
#
|
|
# Vulkan (RADV) is the recommended backend for AMD APUs (Strix Halo, Strix Point,
|
|
# Phoenix, Steam Deck) for maximum stability without needing ROCm DKMS drivers.
|
|
#
|
|
# Usage:
|
|
# ./scripts/build_vulkan_local.sh
|
|
# =============================================================================
|
|
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
ROOT_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
BUILD_DIR="$ROOT_DIR/build-vulkan"
|
|
SRC_DIR="${SRC_DIR:-$ROOT_DIR/CachyLLama}"
|
|
|
|
if [ ! -d "$SRC_DIR" ]; then
|
|
echo "[INFO] CachyLLama source not found at $SRC_DIR. Cloning from GitHub..."
|
|
git clone --depth 1 https://github.com/fewtarius/CachyLLama.git "$SRC_DIR"
|
|
fi
|
|
|
|
echo "========================================================================"
|
|
echo " Building CachyLLama (Vulkan Backend)"
|
|
echo " Source Path: $SRC_DIR"
|
|
echo " Output Dir: $BUILD_DIR"
|
|
echo "========================================================================"
|
|
|
|
mkdir -p "$BUILD_DIR"
|
|
cd "$BUILD_DIR"
|
|
|
|
cmake "$SRC_DIR" -G Ninja \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DGGML_VULKAN=ON \
|
|
-DGGML_CPU=ON \
|
|
-DGGML_NATIVE=OFF \
|
|
-DBUILD_SHARED_LIBS=ON \
|
|
-DLLAMA_BUILD_TESTS=OFF \
|
|
-DLLAMA_BUILD_TOOLS=ON \
|
|
-DLLAMA_BUILD_SERVER=ON \
|
|
-DGGML_RPC=ON \
|
|
-DCMAKE_INSTALL_RPATH='$ORIGIN' \
|
|
-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON
|
|
|
|
ninja -j"$(nproc)"
|
|
|
|
echo "[OK] Vulkan build completed successfully! Binaries are in: $BUILD_DIR/bin"
|