我正在研究Linux内核3.4,我有以下代码:
/* Proximity sensor calibration values */
unsigned int als_kadc;
EXPORT_SYMBOL(als_kadc);
static int __init parse_tag_als_calibration(const struct tag *tag)
{
als_kadc = tag->u.als_kadc.kadc;
return 0;
}
__tagtable(ATAG_ALS, parse_tag_als_calibration);
但是当我构建它时,它会给我以下错误:
warning: data definition has no type or storage class [enabled by default]
是的,这是一个警告,但这是一个禁止的警告,它被视为错误。 警告指向代码中的以下行:
EXPORT_SYMBOL(als_kadc);
有人可以帮我解决这个问题吗?
谢谢。
答案 0 :(得分:4)
行。我发现了问题:我错过了module.h的include
所以,我把它添加到我的代码文件中:
#include <linux/module.h>
这解决了我的问题,因为在该头文件中定义了EXPORT_SYMBOL。