tamaño de archivo de biblioteca compartida
Pregunta
Al crear una biblioteca compartida, el tamaño del archivo ./sl está llegando a ser mayor de 60 KB. Hay 2 archivos .o cuyo tamaño total es superior a 20 KB.
Comprueba las utilidades: ldd y elfdump para determinar las bibliotecas a las que se hace referencia. Además de los archivos originales utilizados, veo referencias de: / usr / ccs / lib / pa20_64 / lddstub y INFORMACIÓN DE ARCHIVO DE FUENTES: ensamblador movelr1 PA-RISC 2.0.
¿Cuáles son las posibles razones para aumentar el tamaño del archivo lib compartido?
[(Novato en C): trabajando en SO: HP Unix 11i V2 PA RISC-64]
Solución 2
¡Gracias, Sean! Sin embargo, el uso de la utilidad de extracción sí afectó el tamaño del archivo, ~ 7 KB, pero de una manera pequeña.
Otra opción que encontramos fue: elfdump -dc TestProg.sl
Al hacerlo, encontramos que el archivo del sistema está incluido y también la fecha / hora de compilación de los archivos fuente. Una probabilidad es que la versión anterior del archivo sl tuviera una versión anterior del archivo de sistema prog / os incluida y esto podría ser una posible causa en la diferencia de tamaño.
El archivo sys incluido en lib compartida: [movelr1.o]: en la ruta /usr/lib/pa20_64/milli.a influye en el tamaño del archivo ./sl creado.
Otros consejos
No soy un experto en HP-UX, pero mi mejor conjetura es que el vinculador de proveedores de HP-UX está agregando algunas cosas adicionales a la biblioteca dinámica que está creando además de los 20kB de archivos de objetos.
Puede usar la utilidad strip (1) para hacer que la biblioteca compartida sea más pequeña.