#!/usr/bin/env bash set -euo pipefail ROOT_DIR="${ROOT_DIR:-/opt/mike-ai}" SOURCE_DIR="${SOURCE_DIR:-$ROOT_DIR/llama.cpp}" BUILD_DIR="${BUILD_DIR:-$SOURCE_DIR/build}" REPO_URL="${REPO_URL:-https://github.com/ggml-org/llama.cpp.git}" SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" COMMIT="$(tr -d '[:space:]' < "$SCRIPT_DIR/LLAMA_CPP_COMMIT")" if [[ $EUID -ne 0 ]]; then echo "Dieses Skript muss als root ausgeführt werden." >&2 exit 1 fi if [[ ! -d "$SOURCE_DIR/.git" ]]; then git clone "$REPO_URL" "$SOURCE_DIR" fi git -C "$SOURCE_DIR" fetch --tags origin git -C "$SOURCE_DIR" checkout --detach "$COMMIT" cmake -S "$SOURCE_DIR" -B "$BUILD_DIR" \ -DGGML_CUDA=ON \ -DLLAMA_CURL=ON \ -DCMAKE_BUILD_TYPE=Release cmake --build "$BUILD_DIR" --config Release --parallel "$(nproc)" "$BUILD_DIR/bin/llama-server" --version