Problème de Compilation sous gcc

Résolu
prohackertop Messages postés 11 Statut Membre -  
prohackertop Messages postés 11 Statut Membre -
Bonjour!

Je n'arrive pas à compiler un petit programme sous gcc car il me dit que la fonction mathématique racine carrée (sqrt (x)) à l'intérieur du main() n'est pas définie alors que j'ai bien inclu:
#include <math.h> au début de mon code, juste après #include <stdio.h>.

Je suis allé fouiller un petit peu dans le répertoire des en-têtes /include et surprise, il y a bien un <math.h> la dedans!!

Si vous êtes sous Mandriva 2006, sauver sous format .c et essayez svp de compiler avec gcc le programme suivant, juste pour voir:

#include <stdio.h>
#include <math.h>
int main(void)
{
float x;
float racx;

printf ("\nEntrer votre nombre svp!\n\n");
scanf("%f", &x);
{
racx = sqrt(x);
printf ("\nLe nombre %f a pour racine carree : %f\n", x, racx);
}
return 0;
}

Merci et bonne continuation à tous!

ProhackertOP

2 réponses

lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité 3 570
 
Salut,

c'est bon math.h
essaie comme ça
gcc -o program program.c -lm
--
lami20j
4
prohackertop Messages postés 11 Statut Membre
 
Bonjour lami20j!

Ca marche maintenant! C'est formidable!

Que c'est bon d'avoir des amis, même si on ne se voit pas et se connaît pas du tout!

Merci beaucoup et que Dieu vous bénisse.

Vive la communauté des internautes sur commentcamarche.net!

Prohackertop
0
helpman68 Messages postés 209 Statut Membre 165
 
bonjour,
tu n'utilises pas la bonne biblio pour sqrt
il faut aussi ajouter
#include <cmath>

tiens moi au courant
0
prohackertop Messages postés 11 Statut Membre
 
Bonjour Helpman68!

#include <math.h> est toujours la bonne biblio.

Ca ne marche toujours pas avec <cmath>!

Mais je crois que c'est la manière dont j'ai compilé mon programme et qui a causé l'erreur:

gcc progr.c -o progr

J'ai oublié l'appel de l'éditeur de lien -lm:

La compilation correcte est donc: gcc -o progr.c progr -lm
0