我在尝试编译Android内核时遇到以下错误,我不知道如何更改这部分代码来解决错误。
NSLog(@"err=%s", sqlite3_errmsg(database));
我正在使用https://android.googlesource.com/kernel/common.git/+/android-3.18中的3.18内核。 我使用make menuconfig生成了一个默认的.config,然后我合并了android / configs文件夹中包含的Android基础和推荐的配置。在做一个make bzImage时我得到了上面的错误。
我正在构建运行Ubuntu 14.10和gcc 4.9.1的ARM机器(用于ARM)。
封闭函数的代码是:
CC net/netfilter/xt_IDLETIMER.o
net/netfilter/xt_IDLETIMER.c: In function ‘reset_timer’:
net/netfilter/xt_IDLETIMER.c:360:16: error: incompatible types when assigning to type ‘uid_t’ from type ‘kuid_t’
timer->uid = sk->sk_socket->file->f_cred->uid;
^
scripts/Makefile.build:257: recipe for target 'net/netfilter/xt_IDLETIMER.o' failed
make[2]: *** [net/netfilter/xt_IDLETIMER.o] Error 1
scripts/Makefile.build:402: recipe for target 'net/netfilter' failed
make[1]: *** [net/netfilter] Error 2
Makefile:937: recipe for target 'net' failed
make: *** [net] Error 2
答案 0 :(得分:2)
我认为以下功能可以帮助您:
static inline uid_t __kuid_val(kuid_t uid)
{
return uid.val;
}
您可以在include/linux/uidgid.h