Posible duplicado:
Problema al usar pow() en C
qué es ‘referencia indefinida a ‘pow’
Tengo un pequeño problema con un trabajo de curso simple para la universidad que realmente me desconcierta.
Esencialmente, tengo que escribir un programa que, entre otras cosas, calcule el volumen de una esfera a partir de un radio dado. Pensé que usaría el pow()
función en lugar de simplemente usar r*r*r
para puntos adicionales de Brownie, pero el compilador sigue dándome el siguiente error:
referencia indefinida a ‘pow’ collect2: error: ld devolvió 1 estado de salida
Mi código se parece a lo siguiente:
#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);
}
y estoy compilando con el comando gcc -o sphere sphere.c
Esto compila y funciona bien en code::blocks en las máquinas Windows en la universidad, pero en mi Fedora 17 en casa, el compilador de la línea de comandos se niega a ejecutarse. ¡Cualquier idea sería apreciada con gratitud!
Bendiciones Ian