| # Nom du script de build | |
| BUILD_SCRIPT="./build.sh" | |
| # Dossier de base à vérifier | |
| BASE_FOLDER="llama.cpp" | |
| # Dossier des binaires à vérifier pour s'assurer que la compilation a réussi | |
| BIN_FOLDER="$BASE_FOLDER/build" | |
| # 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" | |
| } | |
| # Fonction pour afficher des messages d'avertissement en jaune | |
| warning() { | |
| echo -e "\e[33m[ATTENTION]\e[0m $1" | |
| } | |
| # Fonction pour nettoyer et relancer le processus | |
| clean_and_retry() { | |
| error "Le dossier de compilation est manquant. Nettoyage et relance en cours..." | |
| rm -rf "$BASE_FOLDER" | |
| sleep 5 # Attendre quelques secondes avant de relancer | |
| } | |
| # Boucle principale de vérification | |
| info "Démarrage de la surveillance. Vérification de la présence des binaires de llama.cpp..." | |
| while [ ! -d "$BIN_FOLDER" ]; do | |
| # Vérifie si le dossier de base existe, mais n'a pas été compilé | |
| if [ -d "$BASE_FOLDER" ]; then | |
| warning "Le dossier '$BASE_FOLDER' existe, mais le dossier de compilation '$BIN_FOLDER' est manquant." | |
| warning "Cela peut indiquer un échec de la compilation. Nous allons le supprimer et relancer." | |
| clean_and_retry | |
| fi | |
| warning "Les binaires sont introuvables. Lancement du script de build ('$BUILD_SCRIPT')..." | |
| # Exécute le script de build | |
| "$BUILD_SCRIPT" | |
| # Donne un peu de temps à la commande pour s'exécuter | |
| sleep 5 | |
| done | |
| info "Félicitations ! Les binaires de llama.cpp ont été trouvés avec succès !" | |
| info "Le processus de téléchargement et de compilation est terminé." | |