IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

compilation et execution d'un programme


Sujet :

Linux

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2006
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 49
    Points : 32
    Points
    32
    Par défaut compilation et execution d'un programme
    Bonjout tout le monde!!
    A la compilation du programme attaché
    voici un extrait de son Makefile:


    FILE2 = basicmath_large.c rad2deg.c cubic.c isqrt.c
    basicmath_large: ${FILE2} Makefile
    gcc -static -O3 ${FILE2} -o basicmath_large -lm

    j'ai ce message d'erreur: /usr/bin/ld: cannot find -lm
    -lm veut dire inclure la librairie m?n'est ce pas?

    si j'enleve -lm j'ai le msg d'erreur cannot find -lc??


    Salutations
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    -lm veut réellement dire lier la librairie "mathématique" au programme (dont le fichier d'en-tête est "math.h). Il te faut donc avoir installer cette librairie pour pouvoir l'utiliser dans tes projets.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Novembre 2006
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 49
    Points : 32
    Points
    32
    Par défaut math.h
    comment je lie math.h ?
    je compile avec gcc-lib de linux
    je viens de vérifier que le fichier math.h se trouve file:/usr/include
    donc elle y est!!

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    ATTENTION au vocabulaire....

    maths.h est un fichier d'entete et non la bibliotheque. En general les fichiers d'ente standards sont places dans /usr/include

    les bibliotheques (collections compilees de routines, soit statiques (.a) soit dynamiques (.so)) sont en general placees dans /usr/lib

    Le standard de Gnu dit qu'une biblotheque devrait etre nommee libxxx pour utiliser les raccourcis par defaut.

    -lm est un raccourci par defaut, la biblotheque qu'il faut donc chercher est /usr/lib/libm.a

    le -lm doit apparaitre avant le -o...
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

Discussions similaires

  1. [z/OS] Compilation et execution d'un programme Cobol
    Par elajjouri dans le forum Cobol
    Réponses: 7
    Dernier message: 09/08/2018, 02h02
  2. Compiler et executer un autre programme
    Par MinsK dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 22/07/2008, 16h48
  3. compilation et execution de ce programme
    Par madjid17 dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 08/06/2007, 16h48
  4. Compiler et executer un petit programme sous windows
    Par nistelsof dans le forum Langage
    Réponses: 6
    Dernier message: 30/05/2007, 17h31
  5. Réponses: 12
    Dernier message: 06/06/2006, 18h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo