(1)某源文件image_isp_3516a.c中包含函数:
static void ispExpInfoRotate180(void)
{
;
}
(2)某头文件common.h文件中有函数ispExpInfoRotate180的声明:
//common.h
static void ispExpInfoRotate180(void);
(3)源文件awb_main.c中也包含common.h。
则在编译过程中出现这种警告:
warning:'ispExpInfoRotate180' declared 'static' but never defined [-Wunused-function]
static void ispExpInfoRotate180(void);
【问题原因】
声明为static的函数不能被其他文件所使用,如果其他文件include common.h,那么就会报上面的错误。
【解决办法】
解决的办法很简单,将头文件中的声明转移到.c文件中就可以了,即将函数 ispExpInfoRotate180的声明从common.h移动到image_isp_3516a.c文件的开始就可以了。