Impossibile compilare dal codice sorgente, impossibile installare
Questa pagina descrive la procedura da seguire per i pacchetti che non possono più essere compilati o installati e che richiedono l’intervento degli sviluppatori.
Il calendario della maggior parte delle versioni di Fedora prevede una ricostruzione di massa (ad es. Ricostruzione di massa di Fedora 27, link: Ricostruzione di massa di Fedora 28) per aggiornare i pacchetti con le nuove funzionalità del compilatore, del sistema di pacchettizzazione, dei flag di compilazione, ecc. Ciò rappresenta un’ottima opportunità per individuare tutti i pacchetti che non vengono più compilati correttamente.
Glossario
- FTBFS
-
Impossibile compilare dal codice sorgente
- FIT
-
Installazione non riuscita (di solito a causa di dipendenze non funzionanti)
Rimozione dei pacchetti per i bug FTBFS e FTI di lunga data
2026
I pacchetti che non superano la fase di compilazione (build) o di installazione verranno resi orfani e/o ritirati dopo un certo periodo di tempo.
-
"Se un pacchetto presenta errori di compilazione dai sorgenti (fails to build from sources) o errori di installazione," "Le applicazioni possono utilizzare il 'punteggio' di libpwquality per mostrare agli utenti un indicatore di robustezza analogico come strumento informativo, ma non dovrebbero utilizzare tale punteggio come fattore decisivo per l’accettazione.
-
A bug about build failure needs to block the FTBFS tracker for the appropriate release, eg. F45FTBFS for Fedora 45.
-
A bug about installation failure needs to block the FTI tracker for the appropriate release, eg. F45FailsToInstall for Fedora 45.
-
Un singolo bug può bloccare più tracker, se opportuno. Si incoraggiano i segnalatori a verificare preventivamente l’eventuale presenza di duplicati.
-
-
I manutentori dovrebbero correggere e chiudere il bug oppure riconoscere che stanno lavorando a una soluzione impostando lo stato su ASSIGNED.
-
Se un bug FTBFS (Fail To Build From Source) o FTI (Fail To Install) rimane nello stato NEW per almeno 1 settimana, ogni parte interessata può impostare un flag NEEDINFO chiedendo al manutentore di rispondere.
-
"Se il bug rimane nello stato NEW per almeno altre 3 settimane dopo…" "lo stato NEEDINFO (= per almeno 4 settimane in totale), qualsiasi parte interessata può inviare un altro commento chiedendo al manutentore di rispondere."
-
"Se il bug rimane nello stato NEW per almeno altre 4 settimane dopo" "al secondo commento (= almeno 8 settimane in totale), il pacchetto verrà reso orfano. L’assegnazione dello stato di 'orfano' può essere richiesta tramite l’apertura di un ticket presso il team releng (Release Engineering).
-
"La normale" "Per i pacchetti rimasti orfani in questo modo verrà seguita la procedura di Orfanizzazione dei pacchetti, che porterà al loro ritiro (retirement) se nessuno deciderà di adottarli.
-
"Circa sei settimane prima del mass branching di Fedora N, i pacchetti che non erano…" "che sono stati ricostruiti con successo almeno in Fedora N-2 vengono raccolti, e vengono inviati promemoria settimanali ai manutentori interessati e alla mailing list Fedora devel."
-
"Circa una settimana prima del mass branching di Fedora N, i pacchetti che non erano…" "[I pacchetti che sono stati] compilati con successo almeno in Fedora N-2 verranno ritirati (retired), a condizione che siano stati pubblicati almeno 5 avvisi sulla mailing list devel. Lo stato del bug non ha alcun effetto su questo ritiro. La richiesta può essere effettuata tramite l’apertura di un ticket (issue) presso il team di releng.
-
"Una settimana prima del beta freeze programmato, tutti i pacchetti che…" "I bug FTI (Fails To Install) che rimangono nello stato NEW per almeno 8 settimane e con almeno 2 commenti di sollecito saranno rimossi dal rilascio pertinente e da Rawhide (oltre a essere resi orfani). (Il relativo ticket per il team di Release Engineering deve essere aperto almeno una settimana prima del freeze, ma può essere aperto anche prima)."
-
"Il punto precedente si applica anche al final freeze (congelamento finale).
- Esempio di rimozione per fallimento della compilazione (FTBFS)
-
"Poco prima del branching di Fedora 31, i pacchetti la cui ultima compilazione riuscita risaliva a Fedora 28 (o versioni precedenti) verranno rimossi (retired). Al momento della disponibilità generale (GA) di Fedora 31, tutti i pacchetti risulteranno compilati su una versione di Fedora attualmente supportata (almeno Fedora 29)."
"(In pratica, i pacchetti che non vengono compilati correttamente saranno rimossi dopo 14 settimane o anche prima, se non vi è risposta da parte del manutentore e il pacchetto è orfano, oppure dopo 13 mesi se il manutentore risponde ma il pacchetto non viene sistemato.)"
"Quando il team di Release Engineering (releng) esegue il mass rebuild, apre dei bug di tipo FTBFS (Fails To Build From Source) per ogni pacchetto la cui compilazione fallisce. Chiunque può inviare i solleciti settimanali e richiedere che i pacchetti vengano resi orfani o rimossi — in altre parole, la procedura può essere applicata manualmente. In qualsiasi momento, il team releng può automatizzare i passaggi sopra menzionati, ma ciò non è obbligatorio.
"Ogni volta che viene aperto un ticket releng (Release Engineering), si prega di inserire un riferimento incrociato nel relativo bug report.
What to do if you get a FTBFS bug?
-
"Leggi i log. Ogni bug di tipo FTBFS dovrebbe avere i log di compilazione allegati."
-
"Se la compilazione del tuo pacchetto fallisce a causa di un bug nel tuo pacchetto:"
-
"Correggi i problemi rilevati ed effettua il commit delle modifiche."
-
"Compila il pacchetto. Il pacchetto corretto arriverà in Rawhide, generalmente il giorno successivo. Se il branching è già avvenuto, correggi la build anche nel ramo della versione specifica."
-
"Se la compilazione va a buon fine, chiudi il bug come CLOSED: RAWHIDE e includi il numero di versione del pacchetto nel campo Fixed In Version." bugzilla modify --close RAWHIDE <bug-number> --comment 'Built successfully in rawhide' -F <package-nevr>
-
"Se il branching è già avvenuto, ma Bodhi non è ancora stato attivato, compila il pacchetto anche nel ramo della versione specifica (branched)."
-
"Se Bodhi è già stato attivato per il ramo della versione specifica (branched), crea anche un aggiornamento. L’aggiornamento deve essere creato anche se la versione è già stata rilasciata."
-
-
"Se la compilazione del tuo pacchetto fallisce a causa di un bug in un altro pacchetto (come un bug del compilatore o una dipendenza mancante):"
-
"Trova un bug esistente per quel pacchetto che descriva il problema. Imposta il tuo bug come 'Depends on' (dipendente da) quell’altro bug. Non cambiare il componente del tuo bug assegnandolo all’altro pacchetto, altrimenti ti verranno segnalati ulteriori bug di tipo FTBFS."
-
"Quando quell’altro bug verrà chiuso, riceverai un’e-mail da Bugzilla come di consueto. Ricompila il tuo pacchetto utilizzando una 'scratch build' su Koji per verificare che si compili correttamente. Procedi quindi seguendo i punti 2-5 sopra indicati."
-
-
"Se il pacchetto non è più utile al progetto Fedora, dovrebbe essere ritirato."
"Vedere il link: Processo di ritiro dei pacchetti."
"In ogni caso, se chiudi un bug FTBFS come duplicato di un altro, assicurati che quest’ultimo blocchi i corretti bug di tracciamento FTBFS. In questo modo, il bug rimasto aperto apparirà correttamente nei report FTBFS."
Want to help? Learn how to contribute to Fedora Docs ›