Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 06/12/2005, à 22:40

svanneste

Créer un binaire incluant les dépendances ?

Hello à toutes et tous,

Désolé de vous importuner avec ça mais je n'ai aucune connaissance quant à la façon de faire et apparemment mes recherches sont mal formulées (je en trouve pas le comment).

Mon besoin est de créer un exécutable binaire incluant les dépendances et qu'il soit portable sur un ancien Linux (Cobalt Linux, dérrivé d'une Red Hat et qui sert encore de serveur).

Est-ce que vous connaîtriez un How-To (même en Anglais) à ce sujet qui indiquerait la façon de procéder afin que la compilation soit indépendante du système où il est compilé ?

Merci d'avance d'avoir lu ma question saugrenue.


17/06/18 - Ubuntu 18.04 LTS

Hors ligne

#2 Le 06/12/2005, à 23:15

LaTheix

Re : Créer un binaire incluant les dépendances ?

Si tu compiles ton binaire à partir d'un source.tar.gz contenant un "configure", lancer la compil par:
./configure --enable-static
make

Le fichier binaire résulttant aura toutes les librairies dont-il dépend compilé en dur.

Si le "configure" n'existe pas, fais une recherche google sur les outils autotools

Hors ligne

#3 Le 06/12/2005, à 23:26

svanneste

Re : Créer un binaire incluant les dépendances ?

Merci beaucoup pour ta réponse. Une petite précision toutefois : est-ce que cette opération peut être réalisée avec kernel 2.6 alors que le binaire de destination est apparemment un 2.4 ?

En tout cas, merci énormément.


17/06/18 - Ubuntu 18.04 LTS

Hors ligne

#4 Le 07/12/2005, à 14:40

LaTheix

Re : Créer un binaire incluant les dépendances ?

Concenrnant la compatibilité binaire entre deux distributions différentes (noyau 2.4 et 2.6), mes compétences ne me permettent pas de te donner une réponse définitive.

Si ton application ne dépend pas d'une particuliraté du noyau (module spécifique), n'est pas threadé (gestion différerente entre 2.4 et 2.6) ou bien ne s'appuie pas sur un "middleware" (application packagé pour ta distribution comme perl, python, postgresql, etc), je répondrai "oui", tu peux essayer de compiler ton binaire sur du 2.6 vers du 2.4

Pour la compilation, je te conseille de te baser sur gcc-3.4 et d'indiquer au "make" de cibler pour un kernel 2.4. Exporte ces deux variables avant la compialtion ainsi :

LD_ASSUME_KERNEL=2.4
CC=gcc-3.4
export LD_ASSUME_KERNEL, CC

Je n'ai jamais fait ce genre de manip, donc ces infos sont à prendre "comme elles viennent".... Si c'est pour une machine perso, tente le coup, au pire, le binaire plante et puis voilà. Si c'est pour un serveur en production, je te conseille de poser cette question à des "spécialistes" nombreux et compétents sur le site http://linuxfr.org/forums/

Hors ligne