Duplicata possible :
Problème d'utilisation de pow() en C
qu'est-ce qu'une "référence indéfinie à `pow'" ?
J'ai un petit problème avec un simple travail de cours pour l'université qui me laisse vraiment perplexe.
En gros, je dois écrire un programme qui, entre autres choses, calcule le volume d'une sphère à partir d'un rayon donné. J'ai pensé utiliser le pow()
plutôt que d'utiliser simplement la fonction r*r*r
pour gagner des points supplémentaires, mais le compilateur continue à me donner l'erreur suivante :
référence indéfinie à 'pow'. collect2 : error : ld returned 1 exit status
Mon code ressemble à ce qui suit :
#include <math.h>
#define PI 3.14159265 //defines the value of PI
/* Declare the functions */
double volumeFromRadius(double radius);
/* Calculate the volume of a sphere from a given radius */
double volumeFromRadius(double radius) {
return (4.0/3.0) * PI * pow(radius,3.0f);
}
et je compile avec la commande gcc -o sphere sphere.c
Cela compile et fonctionne bien dans code::blocks sur les machines Windows à l'université, mais sur mon Fedora 17 à la maison, le compilateur en ligne de commande refuse de fonctionner. N'hésitez pas à me faire part de vos réflexions !
Bénédictions, Ian