HOWTO Prelink
De Gentoo Linux Wiki
| Kernel & Hardware • Red y Servicios • Portage • Relacionado con el Sistema • Servidor X • Juegos • Misceláneos |
Tabla de contenidos |
[editar] Introducción
Ya que la guía de Gentoo sobre prelink está algo obsoleta, voy a explicar los pasos que seguir para utilizar correctamente prelink e incluso cómo prelinkar los drivers de nvidia.
[editar] ¿Qué es "prelink"?
Muchos programas usan bibliotecas compartidas que deben cargar al iniciarse. Para los programas pequeños el tiempo de carga es muy corto, pero para los programas escritos en C++ (en su mayoría los de KDE) y los que usan muchas bibliotecas, el tiempo de carga es mayor. Prelink es un programa que modifica las bibliotecas compartidas ELF y los binarios ELF enlazados dinámicamente, esto hace que el tiempo y la memoria que necesita el enlazador dinámico al inicio y durante la ejecución del programa sea significativamente menor. Todo esto sólo se usa si todas las bibliotecas dependientes no han cambiado desde el último prelinkeado, en otro caso los programas funcionarán normalmente.
[editar] Prelinkando
El primer paso será emerger prelink.
# emerge prelink
Ahora, -y esto es muy importante- debéis agregar la use "pic" a vuestro make.conf, lo cual nos permitirá prelinkar nuestros binarios. Tendréis que actualizar ciertos programas.
# emerge -uDv --newuse world
Después, si usamos los drivers propietarios de Nvidia vamos a cambiar a la interfaz de xorg-X11 para ahorrarnos problemas. No hagais un env-update.
# opengl-update xorg-x11
Por último, realizamos por fin el prelinkado.
# prelink -avmfR
La última línea al acabar debería ser "Executing /sbin/init U", si no es el caso es que no todo ha sido prelinkeado. Revisa los pasos anteriores.
Ahora, para volver a usar el archivo libgl.so de nvidia, ejecuta:
# opengl-update nvidia
Si usas KDE debes editar en el fichero /etc/env.d/99kde-env lo siguiente:
# #KDE_IS_PRELINKED=1 # KDE_IS_PRELINKED=1
Para finalizar:
# env-update (o eselect env update) # source /etc/profile
Reinicia y disfruta.
[editar] Créditos
- Traducido del post original de hds y portado al wiki por Franco Gotusso.
