GCC 无法 link 到 libc.a

GCC fails to link to libc.a

我正在编译一个包含多个库的项目,没有问题。我正在使用 stdlib 内容。但是,math.h 函数无法 link。我的命令行编译如下:

gcc -o exe/split main/split.c -I/usr/include/gsl  -Isrc -Llib -L/usr/lib/x86_64-linux-gnu  -ltools -lgsl

我正在编译这个简单的脚本,并且刚刚从 math.h 添加了 sqrt 到许多编译和工作正常的 gsl 函数中。 libc.a 存在于 /usr/lib/x86_64-linux-gnu

在这一点上,link 的失败很奇怪,我基本上被困住了。这里可能是什么问题?

大多数在 <math.h> 中声明的函数实际上不在 libc 中。他们在 libm,为了歇斯底里的葡萄干 - 我的意思是,历史原因。

将“-lm”添加到您的命令行。最好放在最后。