2010-11-10 15 views
7

Ho bisogno di configurare il client Git su un hosting condiviso a basso costo, con una distribuzione Linux senza nome a 32 bit. GCC non è disponibile, quindi non posso compilarlo sul server. Ho a mia disposizione altri 2 server Linux a 64 bit e un laptop OSX che potrei provare a compilare in modo incrociato un binario. Ma non riesco a farlo compilare correttamente; quando spingo i file binari sul server a 32 bit, dice che non può eseguire l'eseguibile. Sembra da altre fonti come ho bisogno di aggiungere "-arch i386" e/o "-m32" a ./configure o fare comandi per funzionare per 32-bit, ma suppongo che non li sto usando correttamente. Qualcuno sa come fare questo, o in alternativa, dove trovare un binario Git universale a 32 bit?Compilare git per linux a 32 bit su hosting condiviso

Grazie

+2

Qual è il motivo per compilarlo da solo e non solo scaricare un pacchetto binario? –

+1

Si dovrebbe verificare se il provider host ha montato la propria directory home con l'opzione noexec. Quando questo è il caso, non è possibile eseguire alcun programma binario da lì. – Rudi

+0

@Sven Marnach Ma dove posso scaricare un binario git Linux a 64 bit? – Binarian

risposta

1

Onestamente, se si trattasse di me, vorrei solo fuoco fino a 32 bit di Linux in una macchina virtuale e compilare lì.

9

La tua migliore scommessa è provare a compilare git come un binario statico. Probabilmente il tuo binario ha diverse versioni di librerie condivise (o anche, non tutte le dipendenze installate).

questo link:

How to build git for a host with no compiler

Fornisce informazioni su come costruire git come un binario statico.

Questo stackoverflow answer fornisce informazioni su come compilarlo da un host a 64 bit.

Spero che questo aiuti.

1

OS X non funzionerà, è orientato a produrre binari di Mach-O con l'interfaccia syscall di OS X, non binari ELF di Linux.

L'utilizzo di -m32 sul CLFAGS è di aiuto, ma, soprattutto, utilizza anche l'opzione statico. I binari statici sono molto più portabili.

Se ciò non riesce, si prega di fornire esattamente come ha fallito.

Problemi correlati