当前位置: 技术问答>linux和unix
库函数连接问题
来源: 互联网 发布时间:2015-12-19
本文导语: dugowe@dugowesbox:~/program$ more power.c #include #include int main() { float x = 10; float y = 2; float z; z = power(x, y); printf("%d",z); return 0; } dugowe@dugowesb...
dugowe@dugowesbox:~/program$ more power.c
#include
#include
int main()
{
float x = 10;
float y = 2;
float z;
z = power(x, y);
printf("%d",z);
return 0;
}
dugowe@dugowesbox:~/program$ gcc power.c -lm.a -o power
/usr/bin/ld:找不到 -lm.a
collect2: ld 返回 1
dugowe@dugowesbox:~/program$ gcc power.c -L /usr/lib -lm.a -o power
/usr/bin/ld:找不到 -lm.a
collect2: ld 返回 1
-----------------------------
刚开始学,很多东西都搞不大很清楚,知道的帮忙说一下,
谢谢
#include
#include
int main()
{
float x = 10;
float y = 2;
float z;
z = power(x, y);
printf("%d",z);
return 0;
}
dugowe@dugowesbox:~/program$ gcc power.c -lm.a -o power
/usr/bin/ld:找不到 -lm.a
collect2: ld 返回 1
dugowe@dugowesbox:~/program$ gcc power.c -L /usr/lib -lm.a -o power
/usr/bin/ld:找不到 -lm.a
collect2: ld 返回 1
-----------------------------
刚开始学,很多东西都搞不大很清楚,知道的帮忙说一下,
谢谢
|
gcc -o power power.c -lm (简略写法)
or
gcc -o power power.c /usr/lib/libm.a (使用完整的路径名)
另外,如果你的libm.a不在标准lib库目录下,那么需要用-L选项告诉编译器到哪儿去找你的库文件。
or
gcc -o power power.c /usr/lib/libm.a (使用完整的路径名)
另外,如果你的libm.a不在标准lib库目录下,那么需要用-L选项告诉编译器到哪儿去找你的库文件。
|
gcc power.c -lm -o power
要么-llibm.a
要么-llibm.a
|
gcc 参数 -l表示后面连接动态库math库为m。
|
首先确定有没有库libm.a 或者libm.so一般是在/usr/lib里.
|
不要用-lm.a,改成-lm -static