Ferdlance's picture
Initial commit for the DevSecOps bot
62a0596
raw
history blame
1.79 kB
#!/bin/bash
# Fonction pour afficher des messages informatifs en vert
info() {
echo -e "\e[32m[INFO]\e[0m $1"
}
# Fonction pour afficher des messages d'erreur en rouge
error() {
echo -e "\e[31m[ERREUR]\e[0m $1"
}
# --- Début du script ---
info "Vérification de l'existence du dossier 'llama.cpp'..."
# Vérifie si le dossier 'llama.cpp' n'existe pas
if [ ! -d "llama.cpp" ]; then
info "Le dossier 'llama.cpp' n'existe pas. Téléchargement en cours..."
git clone https://github.com/ggerganov/llama.cpp.git
# Vérifie si le clonage a réussi
if [ $? -ne 0 ]; then
error "Le clonage a échoué. Veuillez vérifier votre connexion Internet ou l'URL du dépôt."
exit 1
fi
# Entre dans le dossier cloné
cd llama.cpp
info "Démarrage de la compilation de llama.cpp..."
# Crée le dossier de compilation et s'y déplace
mkdir -p build && cd build
# Exécute la configuration avec CMake, en activant CURL
info "Configuration avec CMake..."
cmake .. -DLLAMA_CURL=1
# Vérifie si la configuration a réussi
if [ $? -ne 0 ]; then
error "La configuration CMake a échoué. Assurez-vous que CMake est installé."
cd ../..
exit 1
fi
# Lance la compilation
info "Lancement de la compilation..."
cmake --build . --config Release
# Vérifie si la compilation a réussi
if [ $? -ne 0 ]; then
error "La compilation a échoué. Veuillez vérifier les dépendances (make, g++, etc.)."
cd ../..
exit 1
fi
# Retourne au répertoire initial
cd ../..
info "Compilation terminée avec succès !"
else
info "Le dossier 'llama.cpp' existe déjà. Ignorons le téléchargement et la compilation."
fi
info "Script terminé."