ELF statifier creare da eseguibili collegati dinamicamente e tutte le sue librerie di un file. Questo file può essere copiato ed eseguito su un altro computer senza bisogno di trascinare tutti i suoi librerie.
Dinamicamente eseguibili collegati sono più piccoli poi staticamente collegati. Dall'altro lato eseguibili collegati dinamicamente utilizzare librerie condivise compilate in PIC (codice independend posizione), che è più lento di "normale".
I file, creati da statifier ("pseudo-statica") combinano gli svantaggi di entrambi:
Huge - molto più grande di linkato staticamente
Ancora utilizzare il codice PIC
Allora, perché uno lo userà?
Ok, i file "pseudo-statica" hanno alcuni vantaggi anche:
Tutto in un unico file - così distribuzione è semplice
Lo stesso file può essere utilizzato per i computer con versioni diverse biblioteche
Più veloce di avvio
Ma tutto questo ha una lattina con file statici abituali.
Allora, perché l'uso statifier ed enormi eseguibili "pseudo-statica" invece di statico?
non esiste un codice sorgente disponibile
non vi è alcun compilatore (o build-chain) disponibili
Link statica non funziona o non è ovvio come fare
per conservare il layout di memoria - link statico cambia e può "wake-up" bug nascosti
per "permanent link" biblioteca LD_PRELOAD in eseguibile
Le piattaforme supportate:
Linux x86
Linux x86_64
Alpha Linux
Cosa c'è di nuovo in questa versione:
- Corretto errore: 32 / strtoul: non può convertire '0xXXXXXXXXX' introdotto nuovamente nel 1.7.0
Cosa c'è di nuovo nella versione 1.7.0:
- statifier non dipende gdb più
- cessato il supporto per alpha
Cosa c'è di nuovo nella versione 1.6.15:
- fix per Slackware 12.0 (grazie a Stan Tobias)
- fisso typo stupido in src / statifier_create_exe.sh
I commenti non trovato