【发布时间】:2013-11-12 19:52:33
【问题描述】:
我在源文件myfunc.c 中定义了一个函数myfunc,并在头文件myfunc.h 中声明。这两个文件都是库的一部分。
在另一个项目的 (projA) 源文件中,我将头文件包括为:
#include "myfunc.h"
并正确使用函数(参数数量、顺序等)。
我已经编辑了 Makefile,所以它的包含列表中包含 myfunc.h 的路径 (-I)。
但是,我仍然收到有关隐式声明的警告。由于 projA 设置了 warning = error,因此编译失败。
注意:这不是像 here 那样的 Eclipse 问题,或者像 here 那样缺少标头,或者是未声明的函数。
附录
int myfunc(char * source, size_t source_len, char * dest, size_t dest_len)
{
// manipulation
strncpy(dest, source, dest_len);
// other stuff
}
【问题讨论】:
-
你能告诉我们你的功能吗?
-
看看这个gcc.gnu.org/onlinedocs/cpp/Ifdef.html你可能需要把它添加到你的头文件中
-
@EyeOfTheHawks 谢谢!你能把你的答案放在答案部分吗?我会接受的。有人决定为两个不同的标题使用相同的 MACRO,而我想要的那个没有被包括在内。 叹息
-
@TonyTheLion 添加函数声明...
-
@Sagar 好了,添加它作为答案
标签: c gcc header compiler-errors compiler-warnings