From fd47cbda5cf8fff001224b3fa6942a8a916d6058 Mon Sep 17 00:00:00 2001 From: mihaiitdata Date: Fri, 13 Feb 2026 00:19:08 +0200 Subject: [PATCH] =?UTF-8?q?Adaug=C4=83=20FIX=5FAARCH64.md=20-=20documenta?= =?UTF-8?q?=C8=9Bie=20detaliat=C4=83=20pentru=20fixare=20aarch64?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FIX_AARCH64.md | 251 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 251 insertions(+) create mode 100644 FIX_AARCH64.md diff --git a/FIX_AARCH64.md b/FIX_AARCH64.md new file mode 100644 index 0000000..8215602 --- /dev/null +++ b/FIX_AARCH64.md @@ -0,0 +1,251 @@ +# 🔧 Fix aarch64 - Ghid pentru Oracle Linux ARM + +> **Problem**: `config.guess: unable to guess system type` pe aarch64 +> **Solution**: 3 opțiuni disponibile + +--- + +## 🚀 Opțiunea 1: AUTOMATĂ (Recomandată) + +### Pași: + +1. **Pull actualizarea din git:** + ```bash + cd ~/underchat-ircd + git pull origin main + ``` + +2. **Verifică că ai scriptul nou:** + ```bash + ls -la fix-aarch64.sh install.sh + ``` + +3. **Rulează fix-ul:** + ```bash + ./fix-aarch64.sh + ``` + +4. **Instalare:** + ```bash + ./install.sh + ``` + +**Timp**: ~5 minute +**Complexitate**: Ușoară + +--- + +## 🔨 Opțiunea 2: MANUALĂ (Cu Fix Script) + +Dacă `fix-aarch64.sh` nu merge din oarecare motiv: + +```bash +cd ~/underchat-ircd + +# 1. Backup +cp config.guess config.guess.bak +cp config.sub config.sub.bak + +# 2. Adaugă suport aarch64 în config.guess +sed -i '/case "$machine" in/a\ +\taarch64*|arm64*)\ +\t\techo aarch64-unknown-linux-gnu\ +\t\texit 0\ +\t\t;;' config.guess + +# 3. Adaugă suport aarch64 în config.sub +sed -i '/case $cpu in/a\ +\taarch64 | arm64)\ +\t\tcpu=aarch64\ +\t\t;;' config.sub + +# 4. Test +./config.guess + +# 5. Instalare +./install.sh +``` + +**Timp**: ~5 minute +**Complexitate**: Medie + +--- + +## ⚡ Opțiunea 3: RAPID (Cu --build Flag) + +Cel mai simplu - Script-ul `install.sh` detectează aarch64 automat și adaugă flag-ul: + +```bash +cd ~/underchat-ircd +git pull origin main +./install.sh +``` + +**Ce face automat:** +- ✅ Detectează aarch64 cu `uname -m` +- ✅ Adaugă `--build=aarch64-unknown-linux-gnu` +- ✅ Configurează cu flag-ul corect +- ✅ Compilează și instalează + +**Timp**: ~15 minute +**Complexitate**: Ușoară + +--- + +## 📋 Ce S-a Schimbat + +### install.sh - Actualizări: +```bash +# Nou: Funcția fix_config_guess() adaugă: +- Verifică dacă config.guess e vechi +- Patch automat pentru aarch64 +- Detectare aarch64 cu uname +- Adaugă --build flag la configure + +# Rezultat: +./configure --prefix=... --with-maxcon=... --build=aarch64-unknown-linux-gnu +``` + +### fix-aarch64.sh - Script Nou: +```bash +# Dedicat pentru fixare rapidă +- Backup config.guess și config.sub +- Patch-uri pentru aarch64 +- Test config.guess +- Restore din backup dacă ceva merge greșit +``` + +--- + +## 🔍 Verificare + +### După rularea fixului: + +```bash +# 1. Testează config.guess +$ ./config.guess +aarch64-unknown-linux-gnu + +# 2. Testează configure cu --help +$ ./configure --help | head -10 +Usage: configure [OPTION]... [VAR=VALUE]... + +# 3. Rulează instalarea +$ ./install.sh +``` + +--- + +## ❌ Dacă Tot Nu Merge + +### Debug: +```bash +# Verifică output-ul complet +./config.guess +# Trebui să afișeze: aarch64-unknown-linux-gnu + +# Verifică config.guess +head -20 config.guess +grep -i aarch64 config.guess + +# Verifică config.sub +grep -i aarch64 config.sub +``` + +### Restore din backup: +```bash +cp config.guess.bak config.guess +cp config.sub.bak config.sub +``` + +### Manual fix: +```bash +# Editează direct config.guess +nano config.guess +# Cauta secțiunea case "$machine" in +# Adaugă: +# aarch64*|arm64*) +# echo aarch64-unknown-linux-gnu +# exit 0 +# ;; +``` + +--- + +## 📝 Fișiere Modificate pe Gitea + +``` +install.sh ← Adaugă fix_config_guess() + --build flag +fix-aarch64.sh ← Script dedicat pentru fixare rapidă +``` + +--- + +## 🎯 Recomandare + +**Folosiți Opțiunea 3 (RAPID)**: + +```bash +cd ~/underchat-ircd +git pull origin main # Ia versiunea nouă +./install.sh # Script-ul face totul automat +``` + +**Gata!** ✅ Serverul va fi compilat și configurat corect pentru aarch64. + +--- + +## 🆘 Troubleshooting + +### Q: "config.guess still fails" +A: Rulează `./fix-aarch64.sh` explicit + +### Q: "Make fails after configure" +A: Problema nu e la aarch64, ci la dependențe - install build-essential: +```bash +sudo apt-get install build-essential libssl-dev +``` + +### Q: "Permisiune denied la fix-aarch64.sh" +A: +```bash +chmod +x fix-aarch64.sh +./fix-aarch64.sh +``` + +### Q: "Vrei să revert totul" +A: +```bash +git checkout -- config.guess config.sub +# Sau restore din backup +cp config.guess.bak config.guess +cp config.sub.bak config.sub +``` + +--- + +## 📚 Mai Multe Informații + +- **INDEX.md** - Overview complet +- **QUICKSTART.md** - Start rapid +- **INSTALL_AUTO.md** - Documentație detaliată +- **admin.sh** - Meniu administrare + +--- + +## ✨ Status + +✅ Scriptul `install.sh` detectează aarch64 automat +✅ Script `fix-aarch64.sh` disponibil pentru fixare manuală +✅ Documentație completă în limba română +✅ Testat pe Oracle Linux ARM (aarch64) + +**Gata de utilizare!** 🚀 + +--- + +**Data**: 13 februarie 2026 +**Platformă**: aarch64 (ARM 64-bit) +**OS**: Oracle Linux / Ubuntu ARM +**Status**: ✅ Fixed & Tested +