2010-11-10 5 views
7

J'ai besoin de configurer le client Git sur un hébergement mutualisé bon marché, avec une distribution Linux 32 bits sans nom. GCC n'est pas disponible, donc je ne peux pas le compiler sur le serveur. J'ai à ma disposition 2 autres serveurs Linux 64 bits et un ordinateur portable OSX que je pourrais essayer de compiler un binaire. Mais je n'arrive pas à le compiler correctement; quand je pousse les binaires sur le serveur 32 bits, il dit qu'il ne peut pas exécuter l'exécutable. Il regarde d'autres sources comme j'ai besoin d'ajouter "-arch i386" et/ou "-m32" au ./configure ou faire des commandes pour travailler en 32 bits, mais je suppose que je ne les utilise pas correctement. Quelqu'un sait comment faire cela, ou alternativement, où trouver un binaire universel Git 32 bits?Compiler git pour linux 32 bits sur un hébergement partagé

Merci

+2

Quelle est la raison de la compiler vous-même et pas seulement de télécharger un paquet binaire? –

+1

Vous devez vérifier si le fournisseur d'hébergement a monté votre répertoire personnel avec l'option noexec. Lorsque c'est le cas, vous ne pouvez exécuter aucun programme binaire à partir de là. – Rudi

+0

@Sven Marnach Mais où puis-je télécharger un binaire git Linux 64 bits? – Binarian

Répondre

1

Honnêtement, si elle était moi, je voudrais juste feu vers le haut de 32 bits Linux dans une machine virtuelle et compilent là.

9

Votre meilleur pari est de tenter de compiler git en tant que binaire statique. Votre binaire a probablement différentes versions de bibliothèques partagées (ou même, toutes les dépendances ne sont pas installées).

Ce lien:

How to build git for a host with no compiler

Fournit des informations sur la façon de construire git comme un binaire statique.

Ce stackoverflow answer fournit des informations sur la façon de le compiler à partir d'un hôte 64 bits.

Espérons que cela aide.

1

OS X ne fonctionne pas - il est conçu pour produire des binaires Mach-O avec l'interface OS X syscall, et non avec les binaires Linux ELF. L'utilisation de -m32 sur le CLFAGS va aider, mais surtout, utiliser -static aussi. Les binaires statiques sont beaucoup plus portables.

Si cela échoue, veuillez indiquer exactement comment cela a échoué.

Questions connexes