Instalé una aplicación [por ejemplo, fdisk]. Pero requería bibliotecas para su ejecución. Estoy buscando una utilidad / herramienta que me ayude a crear un binario estático a partir de binarios ya instalados. Para que pueda usarlo en cualquier lugar.
Las únicas herramientas confiables que encontré son ErmineLight
de
aquí , pero esta es shareware.
¿Hay algún software de código abierto disponible para lo mismo?
EDIT
fdisk es solo un ejemplo. La mayoría de las veces trabajo en LFS, así que si tengo que usar alguna utilidad, debo seguir los pasos como
- Descargar la fuente
- configurar
- hacer
- hacer prueba
- hacer instalar,
Entonces, solo para ahorrar tiempo, estoy buscando una solución en la que pueda hacer un binario estático de debian o de fedora o de otra distribución, probarlo en LFS, y si funciona bien o según mi requisito, lo haré ir con el código fuente para la compilación.
Respuestas:
Si fdisk es solo un ejemplo y su objetivo es realmente hacer ejecutables estáticos a partir de ejecutables dinámicos, intente con Elf statifier . Incluso hay una comparación con Armiño (por el vendedor de Armiño, por lo tanto, advertencia (no) emptor) . Tenga en cuenta que
Si su objetivo es tener un conjunto pequeño y portátil de herramientas del sistema, está buscando BusyBox , un conjunto de herramientas centrales destinadas a sistemas integrados (incluidos
fdisk
). También puede estar interesado en una biblioteca estándar más pequeña que Glibc, por ejemplo dietlibc o µClibc .fuente
Bueno ... esto parece una muy mala idea. Pero es posible.
Como fdisk es de código abierto, simplemente tome su fuente y mire el Makefile. Debería encontrar una opción que pasará "-static" a gcc en la compilación.
No soy un gurú de C / C ++ pero, hasta donde sé, no es posible crear un binario enlazado estáticamente a partir de un binario enlazado dinámicamente existente.
Si desea usarlo en cualquier lugar, le recomiendo usar una pequeña distribución de mantenimiento que comienza en segundos y le permite modificar todo.
Tiene más sentido para mí porque probablemente querrás modificar el disco que ejecuta tu instalación de Linux / UNIX.
fuente
También puede usar ELFex Linker , es un programa genial que acabo de descubrir, es GUI y puede crear ejecutables estáticos a partir del ejecutable dinámico.
fuente