Possible Duplicate:
Problem using pow() in C
what is 'undefined reference to `pow''未定義的引用在C POW(),儘管包括math.h中
我有一個有點問題用一段簡單的課程對UNI這真是百思不得其解。基本上,我必須編寫一個程序,除其他功能外,它還可以計算給定半徑範圍內的球體積。我想我會用pow()
功能,而不是簡單地使用r*r*r
,額外的加分,但是編譯器不斷給我下面的錯誤:
undefined reference to 'pow' collect2: error: ld returned 1 exit status
我的代碼如下所示:
#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);
}
我正在用命令編譯gcc -o sphere sphere.c
這個編譯並在uni上的Windows機器上的代碼塊中運行良好,但在我的Fedora 17上,命令行編譯器拒絕運行。任何想法將不勝感激!
祝福, 伊恩