dimensione del file della libreria condivisa
Domanda
Al momento della creazione di una libreria condivisa la dimensione del file ./sl risulta essere maggiore di 60 KB. Esistono 2 file .o la cui dimensione totale è superiore a 20 KB.
Controllato le utilità: ldd ed elfdump per determinare le librerie a cui si fa riferimento. Oltre ai file originali utilizzati, vedo i riferimenti di: / usr / ccs / lib / pa20_64 / lddstub e INFORMAZIONI SUL FILE SORGENTE: assemblatore movelr1 PA-RISC 2.0.
Quali sono i possibili motivi dell'aumento della dimensione del file lib condiviso?.
[(Principiante in C): lavorando su SO: HP Unix 11i V2 PA RISC-64]
Soluzione 2
Grazie Sean !, Tuttavia l'utilizzo dell'utility strip ha influito sulla dimensione del file, ~ 7 KB, ma in piccolo.
Un'altra opzione che abbiamo trovato era: elfdump -dc TestProg.sl
In questo modo abbiamo scoperto che il file di sistema è incluso e anche la data / ora della compilazione dei file di origine. Una probabilità è che la versione precedente del file sl avesse una versione precedente del file di sistema prog / os inclusa e questa potrebbe essere una possibile causa nella differenza di dimensioni.
Il file sys incluso nella libreria condivisa: [movelr1.o]: nel percorso /usr/lib/pa20_64/milli.a influenza la dimensione del file ./sl creato.
Altri suggerimenti
Non sono un esperto di HP-UX, ma la mia ipotesi migliore è che il linker del fornitore HP-UX stia aggiungendo alcune cose aggiuntive alla libreria dinamica che sta creando oltre ai 20kB di file oggetto.
È possibile utilizzare l'utilità strip (1) per ridurre la libreria condivisa.