Resume di compilazione da sorgenti di grosso software

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3956
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Resume di compilazione da sorgenti di grosso software

Messaggio da joe »

Stavo provando il browser LibreWolf, solitamente uso Firefox e solitamente lo installo e aggiorno con lo script latestfirefox.sh di santo ruario. Quello script però non parte dai sorgenti del pachidermico browser ma si limita a reimpacchettare i binari rilasciati per Debian o per RPM ora non ricordo. Ad ogni modo ha sempre funzionato e va bene.

Ora provando questo fork LibreWolf ho fatto caso che anche AlienBob ne rilascia un pacchetto bell'e pronto.
M'è caduto proprio ieri l'occhio su un changelog al suo repo:

Codice: Seleziona tutto

librewolf: updated to 139.0.1_1 (Slackware 15.0  onwards).
  Note: I had to compile 32bit on a 64bit Slackware system in a 32bit chroot,
  to avoid a "rust-LLVM: out of memory" error.
Versione credo più aggiornata rispetto ad altro pacchetto presente in SBo che comunque reimpacchetta un appimage come punto di partenza.

Ho così provato a mettere alla prova il mio vetusto quad core, non è ormai adatto per questo genere di cose, e neanche i 4 GB di ram al seguito, ma ho provato ugualmente.
Ho rilevato alcune dipendenze mancanti poi sistemate leggendo meglio lo slackbuild di AlienBob e alla fine ha iniziato la compilazione.
Purtroppo sono incappato in un blocco totale del PC che stavo usando anche per fare altro al contempo a dirla tutta. Ho settato NUMJOB=-j1 e riprovato, sembra tutto più tranquillo, ma sono incappato di nuovo in un blocco, mi arriva la memoria al 95% e non si tocca più palla, devo proprio riavviare col "pulsante reset".

Allora m'è venuta in mente questa domanda.
Ma pur concedendo di andare out of memory o bloccarsi durante la compilazione, c'è qualche sistema per non dover ricominciare da capo tutta la procedura?
Non è questo il caso, io qui posso prendere anche il pacchetto precompilato da Alien e dovrebbe funzionare identicamente a quello compilato sul mio sistema (anche se non è proprio perfetto perché dovrei fare un aggiornamento di slackware base v abe'). Ma in ogni caso, la domanda direi che può avere un certo senso.

Anni fa ricordo di aver letto qualcosa sul tool ccache, non l'ho mai usato però... Qua vedo che serve "rust", ma credo siano coinvolti anche c c++ e compagnia, per cui non so se ccache sia attinente.
Niente, pensavo che in qualche modo si potrebbe organizzare il build a più riprese per pachidermi come questo browser, tipo per farlo compilare quando non si usa il PC, il che potrebbe risultare molto utile e permettere l'operazione anche su ferri vecchi tipo il vetusto cassone.
Se qualcuno ha informazioni in tema... grazie in anticipo! :)

Rispondi