2010-11-10 12 views
7

Necesito configurar el cliente Git en un alojamiento compartido barato, con una distribución de Linux sin nombre de 32 bits. GCC no está disponible, así que no puedo compilarlo en el servidor. Tengo a mi disposición otros 2 servidores Linux de 64 bits y una computadora portátil OSX con la que podría intentar una compilación cruzada de un binario. Pero parece que no puedo compilarlo correctamente; cuando presiono los binarios en el servidor de 32 bits, dice que no puede ejecutar el ejecutable. Parece de otras fuentes como que necesito agregar "-arch i386" y/o "-m32" a ./configure o hacer que los comandos funcionen para 32 bits, pero supongo que no los estoy usando correctamente. ¿Alguien sabe cómo hacer esto, o alternativamente, dónde encontrar un binario Git universal de 32 bits?Compilar git para Linux de 32 bits en hosting compartido

Gracias

+2

¿Cuál es el motivo para compilarlo usted mismo y no solo descargar algún paquete binario? –

+1

Debe verificar si el proveedor de host montó su directorio de inicio con la opción noexec. Cuando este es el caso, no puede ejecutar ningún programa binario desde allí. – Rudi

+0

@Sven Marnach Pero, ¿dónde puedo descargar un Linux de 64 bit git binary? – Binarian

Respuesta

1

Honestamente, si fuera yo, yo solo use Linux de 32 bits en una máquina virtual y compilar allí.

9

Su mejor apuesta es tratar de compilar git como un binario estático. Su binario probablemente tenga diferentes versiones de bibliotecas compartidas (o incluso, no todas las dependencias instaladas).

Este enlace:

How to build git for a host with no compiler

Proporciona información sobre cómo construir git como un binario estático.

Este stackoverflow answer proporciona información sobre cómo realizar una compilación cruzada desde un host de 64 bits.

Espero que esto ayude.

1

OS X no funcionará: está diseñado para producir binarios Mach-O con la interfaz de sistema de menús OS X, no con los archivos binarios ELF de Linux.

El uso de -m32 en el CLFAGS va a ayudar, pero lo más importante es usar -estático también. Los binarios estáticos son mucho más portátiles.

Si eso falla, indique exactamente cómo falló.

Cuestiones relacionadas