嗨,我试图创建C可执行文件,在这里我似乎无法找到“bits/mathcalls.h”。
$ make
45) cannot find include file "bits/mathcalls.h"
not in /usr/include/linux/bits/mathcalls.h
not in include/bits/mathcalls.h
not in /usr/include/bits/mathcalls.h
但是使用find
$ sudo find / -name 'mathcalls.h'
/usr/include/mathcalls.h
/usr/include/i386-linux-gnu/bits/mathcalls.h
所以它确实存在,但不是在“制造”的任何位置。如何添加这些路径,以便“make”在实际拥有它们的位置查找它们?
非常感谢
最佳答案
您不应该直接包含bits/mathcalls.h
。您应该始终只包含math.h
然后它将包含您的目标操作系统/体系结构的正确mathcalls.h
。实际上,如果您打开并阅读任何mathcalls.h
标题,它们的前几行中都会有类似的内容
#ifndef _MATH_H
# error "Never include <bits/mathcalls.h> directly; include <math.h> instead."
#endif
如果您实际尝试在不
math.h
的情况下包含它们,则会抛出错误。关于c - 找不到bits/mathcalls.h,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21732489/