android 3.10. 内核,编译android 3.10内核源码时出错

最近我尝试为我的xiaomi mi4c交叉编译android内核。 要做到这一点,我已经下载并这样配置的工具链:从这里编译android 3.10内核源码时出错

git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9 -b marshmallow-release toolchain64

export ARCH=arm64

export SUBARCH=arm64

export CROSS_COMPILE=`pwd`/toolchain64/bin/aarch64-linux-android-

,并做到这一点:

make clean && make mrproper

make ARCH=arm64 resurrection_libra_defconfig

make ARCH=arm64 CROSS_COMPILE=$CROSS_COMPILE -j3

然后,我有一个错误:

In file included from include/linux/kernel.h:14:0,

from include/linux/sched.h:15,

from /home/owner/android_kernel_xiaomi_msm8992/arch/arm64/include/asm/compat.h:25,

from /home/owner/android_kernel_xiaomi_msm8992/arch/arm64/include/asm/stat.h:23,

from include/linux/stat.h:5,

from include/linux/module.h:10,

from drivers/tspdrv/tspdrv.c:26:

drivers/tspdrv/ImmVibeSPI_ISA1000.c: In function 'ImmVibeSPI_ForceOut_SetSamples':

include/linux/dynamic_debug.h:64:16: error: implicit declaration of function 'KBUILD_STR' [-Werror=implicit-function-declaration]

static struct _ddebug __aligned(8) \

^

include/linux/dynamic_debug.h:76:2: note: in expansion of macro 'DEFINE_DYNAMIC_DEBUG_METADATA'

DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \

^

include/linux/printk.h:240:2: note: in expansion of macro 'dynamic_pr_debug'

dynamic_pr_debug(fmt, ##__VA_ARGS__)

^

drivers/tspdrv/ImmVibeSPI_ISA1000.c:573:2: note: in expansion of macro 'pr_debug'

pr_debug("%s: level = %d\n", __func__, level);

^

:0:27: error: 'tspdrv' undeclared (first use in this function)

include/linux/dynamic_debug.h:66:14: note: in expansion of macro 'KBUILD_MODNAME'

.modname = KBUILD_MODNAME, \

^

include/linux/dynamic_debug.h:76:2: note: in expansion of macro 'DEFINE_DYNAMIC_DEBUG_METADATA'

DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \

^

include/linux/printk.h:240:2: note: in expansion of macro 'dynamic_pr_debug'

dynamic_pr_debug(fmt, ##__VA_ARGS__)

^

drivers/tspdrv/ImmVibeSPI_ISA1000.c:573:2: note: in expansion of macro 'pr_debug'

pr_debug("%s: level = %d\n", __func__, level);

^

:0:27: note: each undeclared identifier is reported only once for each function it appears in

include/linux/dynamic_debug.h:66:14: note: in expansion of macro 'KBUILD_MODNAME'

.modname = KBUILD_MODNAME, \

^

include/linux/dynamic_debug.h:76:2: note: in expansion of macro 'DEFINE_DYNAMIC_DEBUG_METADATA'

DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \

^

include/linux/printk.h:240:2: note: in expansion of macro 'dynamic_pr_debug'

dynamic_pr_debug(fmt, ##__VA_ARGS__)

^

drivers/tspdrv/ImmVibeSPI_ISA1000.c:573:2: note: in expansion of macro 'pr_debug'

pr_debug("%s: level = %d\n", __func__, level);

^

drivers/tspdrv/tspdrv.c: At top level:

drivers/tspdrv/tspdrv.c:94:37: fatal error: tspdrvOutputDataHandler.c: No such file or directory

#include

^

cc1: some warnings being treated as errors

compilation terminated.

所以,问题是,我在做什么错误?也许我需要另一个用于交叉编译的工具链? Sombody可以提供一个吗?我不认为在内核代码中有错误。那么会出现什么问题呢?

+0

它可能不会有所作为,但你的shell输入是标新立异。 (1)由于您导出了ARCH和CROSS_COMPILE env变量,因此您不必在** make **命令中再次指定它们。 (2)CROSS_COMPILE仅仅是命令前缀,而不是整个路径。修改env变量PATH以包含您的工具链。 (3)'make mrproper'使前面的'make clean'成为多余的。 (4)尝试没有'-j3'选项的构建。 IIRC偶尔出现并行工作问题。 –

+0

这看起来像是同样的问题:https://github.com/MiCode/Xiaomi_Kernel_OpenSource/issues/14 –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值