用gcc编译包含math.h的源程序时加上-lm参数避免链接出错
我用gcc编译数学函数处理程序,通过预处理器#include<math.h>包含头文件。编译没有问题,链接时提示未定义函数引用。
后来发现在命令行末尾加上-lm参数就可以了。
比如gcc --std=c99 -o program program.c -lm
(在Windows平台暂时没有遇到这样的问题。) -lm参数是啥意思?流氓模式? webfch 发表于 2015-5-26 02:00
-lm参数是啥意思?流氓模式?
连接libm.so或者libm.a(静态链接).-lxxx就是表示连接libxxx.
一般来说,编译器都会有默认的连接选项,所以有时可能不加-lm也不会连接出错,但为了保险起见,除了-lc之外必要的连接选项最好加上。
页:
[1]