[英]Is it possible to link to the math library from inside the C source code in gcc?
当我试图包含<math.h>
我发现我需要使用命令gcc -lm
链接数学库
但我正在寻找另一种方法来链接数学库'代码',这不需要用户使用任何选项进行编译。
gcc -lm
可以使用#pragma
或其他东西在C代码中完成吗?
编辑:我已将-ml
更改为-lm
简化用户(或实际上对于开发人员)的复杂性的通常方法是编写makefile。
首先,它是gcc -lm
并且没有#pragma
意味着给出链接指令
不,您需要告诉链接器链接库以链接库。
链接器不知道代码,只知道编译的目标文件。 它不会看到语言特定的编译指示。
你没有说你正在使用哪个UNIX shell,但如果这只是为了方便,只需编写一个shell函数:
gcm() {
gcc -lm $*
}
将它放在shell的启动文件中,您可以使用以下代码编译和链接数学库:
gcm mycode.c
使用-lm
是唯一的选择。 另外,使用#pragma
是微软特定的而且非常脏。 想象一下,有一个新的超高效数学库需要-lsupermath而不是-lm - 那么你必须修改代码而不是修改makefile或make配置文件。
不,gcc没有用于链接到库的编译指示。 你必须使用命令行选项链接到数学库(它是-lm
不是-ml
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.