针对ARM的Linux内核4.10.8编译错误

时间:2017-04-11 10:00:42

标签: linux-kernel arm cross-compiling kbuild

我试图交叉编译Linux内核4.10.8 for arm,但是得到了这个错误:

      CC [M]  drivers/vhost/vhost.o
In file included from ./include/uapi/linux/stddef.h:1:0,
                 from ./include/linux/stddef.h:4,
                 from ./include/uapi/linux/posix_types.h:4,
                 from ./include/uapi/linux/types.h:13,
                 from ./include/linux/types.h:5,
                 from ./include/uapi/asm-generic/fcntl.h:4,
                 from ./arch/arm/include/uapi/asm/fcntl.h:9,
                 from ./include/uapi/linux/fcntl.h:4,
                 from ./include/linux/fcntl.h:4,
                 from ./include/linux/eventfd.h:11,
                 from drivers/vhost/vhost.c:14:
drivers/vhost/vhost.c: In function ‘vhost_vring_ioctl’:
./include/linux/compiler.h:518:38: error: call to ‘__compiletime_assert_1357’ declared with attribute error: BUILD_BUG_ON failed: __alignof__ *vq->avail > VRING_AVAIL_ALIGN_SIZE
  _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)enter 

知道如何解决这个问题吗? 我不知道这个模块用的是什么,所以我不知道我是否真的需要编译它,但是我无法在menuconfig中找到禁用此模块的位置?

1 个答案:

答案 0 :(得分:0)

当您需要virtualization支持时,通常需要此模块(CONFIG_VHOST)。如果您不需要,请在make menuconfig中将其停用。

如果您不需要虚拟化,则可以忽略它并继续构建。