Esistono 2 argomenti per avere librerie condivise:
- Aiuta a ridurre lo spazio su disco.
- Quando una libreria condivisa viene aggiornata, tutti i file binari che dipendono da essa ottengono l'aggiornamento.
C'è principalmente uno svantaggio per le librerie condivise:
- Possono (possono) introdurre l'inferno della dipendenza.
Sui computer desktop, il primo vantaggio non è più valido. Lo spreco di spazio su disco non è un grosso problema in questi giorni.
Avere binari statici ci permetterebbe di ottenere gestori di pacchetti migliori - voglio dire, l'inferno delle dipendenze sarebbe un ricordo del passato. Aggiungere un programma significherebbe semplicemente aggiungere un binario; alla fine una cartella per permettergli di gestire i suoi file. L'eliminazione di un programma significherebbe semplicemente eliminare questo file. Dipendenze? Andato.
Il secondo vantaggio è ancora valido, ma penso che il vantaggio dei binari statici sui computer desktop sia superiore. Voglio dire, anche i nuovi linguaggi come Go compilano tutti i loro binari nonostante i vantaggi delle librerie condivise, per la comodità.
Dato che uno dei principali vantaggi delle librerie condivise non è più un grosso problema, le librerie statiche C sono ancora disapprovate? Se è così, perché?