ircu2/FIX_AARCH64.md

4.5 KiB

🔧 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:

    cd ~/ircu2
    git pull origin main
    
  2. Verifică că ai scriptul nou:

    ls -la fix-aarch64.sh install.sh
    
  3. Rulează fix-ul:

    ./fix-aarch64.sh
    
  4. Instalare:

    ./install.sh
    

Timp: ~5 minute
Complexitate: Ușoară


🔨 Opțiunea 2: MANUALĂ (Cu Fix Script)

Dacă fix-aarch64.sh nu merge din oarecare motiv:

cd ~/ircu2

# 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:

cd ~/ircu2
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:

# 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:

# 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:

# 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:

# 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:

cp config.guess.bak config.guess
cp config.sub.bak config.sub

Manual fix:

# 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):

cd ~/ircu2
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:

sudo apt-get install build-essential libssl-dev

Q: "Permisiune denied la fix-aarch64.sh"

A:

chmod +x fix-aarch64.sh
./fix-aarch64.sh

Q: "Vrei să revert totul"

A:

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