无法使用 lp 构建 3.10 内核?
unable to build the 3.10 kernel with the lp?
能否请您提供使用 lp 编译 linux 3.10 内核的步骤。
我正在将 3.10 内核移植到 arndale 板,即带有设备树的 exynos。
我通过 运行
创建了 defconfig
ARCH=arm scripts/kconfig/merge_config.sh arch/arm/configs/exynos_defconfig android/configs/android-base.cfg
我试着编译它。
但是编译错误如
In file included from include/linux/jbd.h:247:0,
from fs/ext3/ext3.h:23,
from fs/ext3/balloc.c:16:
include/linux/jbd_common.h: In function 'jbd_lock_bh_state':
include/linux/jbd_common.h:18:16: error: 'BH_State' undeclared (first use in this function)
bit_spin_lock(BH_State, &bh->b_state);
^
include/linux/jbd_common.h:18:16: note: each undeclared identifier is reported only once for each function it appears in
include/linux/jbd_common.h: In function 'jbd_trylock_bh_state':
include/linux/jbd_common.h:23:26: error: 'BH_State' undeclared (first use in this function)
return bit_spin_trylock(BH_State, &bh->b_state);
^
include/linux/jbd_common.h: In function 'jbd_is_locked_bh_state':
include/linux/jbd_common.h:28:28: error: 'BH_State' undeclared (first use in this function)
return bit_spin_is_locked(BH_State, &bh->b_state);
^
include/linux/jbd_common.h: In function 'jbd_unlock_bh_state':
include/linux/jbd_common.h:33:18: error: 'BH_State' undeclared (first use in this function)
bit_spin_unlock(BH_State, &bh->b_state);
^
include/linux/jbd_common.h: In function 'jbd_lock_bh_journal_head':
include/linux/jbd_common.h:38:16: error: 'BH_JournalHead' undeclared (first use in this function)
bit_spin_lock(BH_JournalHead, &bh->b_state);
^
include/linux/jbd_common.h: In function 'jbd_unlock_bh_journal_head':
include/linux/jbd_common.h:43:18: error: 'BH_JournalHead' undeclared (first use in this function)
bit_spin_unlock(BH_JournalHead, &bh->b_state);
^
make[2]: *** [fs/ext3/balloc.o] Error 1
make[1]: *** [fs/ext3] Error 2
make: *** [fs] Error 2
谁能告诉我构建内核需要遵循哪些步骤?
构建内核时哪里出错了?
1.Take 来自基于 arm 的芯片组的工作开源 3.10 android 内核,例如来自 http://releases.linaro.org/15.01/android/vexpress-lcr
的 vexpress
2.The 上面的内核已经支持基于 exynos 的芯片组它在 arch/arm/configs/exynos_defconfig 中也有 exynos defconfig 你可以使用这个 defconfig 并在 arndale 上刷写它,内核应该启动,因为 arndale 使用基于 exynos 的仅芯片组。
3.This 内核仅支持 arndale 中使用的 SoC,即 exynos5250,您需要添加对 arndale 特定更改的支持,例如 GUI 相关更改、外设相关更改等,因为您必须从工作中获取参考arndale android 来自 http://releases.linaro.org/14.08/android/arndale 等源代码的内核,并查找为添加对 arndale 的支持所做的更改。
下面是他们添加的第一个补丁,他们开始添加对 arndale
的支持
From 6f50912b63088c098b9a0d14f7384567631df356 Mon Sep 17 00:00:00 2001
From: Girish K S <ks.giri@samsung.com>
Date: Mon, 8 Oct 2012 13:32:56 +0900
Subject: [PATCH 001/130] ARM: DTS: exynos5250-arndale: Add initial board
support file
以下是最后添加的补丁
From 5a93c058f6bd377fc5edad3e07b1f4d9f18f0c32 Mon Sep 17 00:00:00 2001
From: Pranav Tipnis <pranav.tipnis@linaro.org>
Date: Tue, 9 Jul 2013 18:20:41 +0530
Subject: [PATCH 085/130] media: vb2: Activate display as soon as mmap is
您必须研究其间的所有补丁,包括上述两个补丁并将相关更改移植到您的 3.10 内核。
祝一切顺利!
谢谢,
德瓦什
解决方法是禁用 ext3:
-CONFIG_EXT3_FS=y
-# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
能否请您提供使用 lp 编译 linux 3.10 内核的步骤。 我正在将 3.10 内核移植到 arndale 板,即带有设备树的 exynos。 我通过 运行
创建了 defconfigARCH=arm scripts/kconfig/merge_config.sh arch/arm/configs/exynos_defconfig android/configs/android-base.cfg
我试着编译它。
但是编译错误如
In file included from include/linux/jbd.h:247:0,
from fs/ext3/ext3.h:23,
from fs/ext3/balloc.c:16:
include/linux/jbd_common.h: In function 'jbd_lock_bh_state':
include/linux/jbd_common.h:18:16: error: 'BH_State' undeclared (first use in this function)
bit_spin_lock(BH_State, &bh->b_state);
^
include/linux/jbd_common.h:18:16: note: each undeclared identifier is reported only once for each function it appears in
include/linux/jbd_common.h: In function 'jbd_trylock_bh_state':
include/linux/jbd_common.h:23:26: error: 'BH_State' undeclared (first use in this function)
return bit_spin_trylock(BH_State, &bh->b_state);
^
include/linux/jbd_common.h: In function 'jbd_is_locked_bh_state':
include/linux/jbd_common.h:28:28: error: 'BH_State' undeclared (first use in this function)
return bit_spin_is_locked(BH_State, &bh->b_state);
^
include/linux/jbd_common.h: In function 'jbd_unlock_bh_state':
include/linux/jbd_common.h:33:18: error: 'BH_State' undeclared (first use in this function)
bit_spin_unlock(BH_State, &bh->b_state);
^
include/linux/jbd_common.h: In function 'jbd_lock_bh_journal_head':
include/linux/jbd_common.h:38:16: error: 'BH_JournalHead' undeclared (first use in this function)
bit_spin_lock(BH_JournalHead, &bh->b_state);
^
include/linux/jbd_common.h: In function 'jbd_unlock_bh_journal_head':
include/linux/jbd_common.h:43:18: error: 'BH_JournalHead' undeclared (first use in this function)
bit_spin_unlock(BH_JournalHead, &bh->b_state);
^
make[2]: *** [fs/ext3/balloc.o] Error 1
make[1]: *** [fs/ext3] Error 2
make: *** [fs] Error 2
谁能告诉我构建内核需要遵循哪些步骤?
构建内核时哪里出错了?
1.Take 来自基于 arm 的芯片组的工作开源 3.10 android 内核,例如来自 http://releases.linaro.org/15.01/android/vexpress-lcr
的 vexpress2.The 上面的内核已经支持基于 exynos 的芯片组它在 arch/arm/configs/exynos_defconfig 中也有 exynos defconfig 你可以使用这个 defconfig 并在 arndale 上刷写它,内核应该启动,因为 arndale 使用基于 exynos 的仅芯片组。
3.This 内核仅支持 arndale 中使用的 SoC,即 exynos5250,您需要添加对 arndale 特定更改的支持,例如 GUI 相关更改、外设相关更改等,因为您必须从工作中获取参考arndale android 来自 http://releases.linaro.org/14.08/android/arndale 等源代码的内核,并查找为添加对 arndale 的支持所做的更改。 下面是他们添加的第一个补丁,他们开始添加对 arndale
的支持From 6f50912b63088c098b9a0d14f7384567631df356 Mon Sep 17 00:00:00 2001
From: Girish K S <ks.giri@samsung.com>
Date: Mon, 8 Oct 2012 13:32:56 +0900
Subject: [PATCH 001/130] ARM: DTS: exynos5250-arndale: Add initial board
support file
以下是最后添加的补丁
From 5a93c058f6bd377fc5edad3e07b1f4d9f18f0c32 Mon Sep 17 00:00:00 2001
From: Pranav Tipnis <pranav.tipnis@linaro.org>
Date: Tue, 9 Jul 2013 18:20:41 +0530
Subject: [PATCH 085/130] media: vb2: Activate display as soon as mmap is
您必须研究其间的所有补丁,包括上述两个补丁并将相关更改移植到您的 3.10 内核。 祝一切顺利!
谢谢, 德瓦什
解决方法是禁用 ext3:
-CONFIG_EXT3_FS=y
-# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set