【发布时间】:2010-12-30 16:34:16
【问题描述】:
谁能帮我为 mips32 acrh 编译内核 2.6.21?请让我知道我应该从 make menuconfig 中选择哪些选项。我已经安装了工具链,目标板是小端系统。
提前致谢, 苏维克
【问题讨论】:
-
这在很大程度上取决于你的目标板的细节......你有任何以前的linux内核配置吗?如果你完全不知所措,我相信 DDWRT/OpenWRT 路由器包是一个 MIPS 嵌入式 linux,你可以借用它的配置作为一个遥远的起点,但你可能需要做很多工作来开发一个有效的配置为您的电路板的硬件。通常的初始目标是通过 DRAM 刷新和映射获得一个稳定(如果不一定是全速)的处理环境,并让串行驱动程序正常工作,以便您可以看到早期启动消息。..
-
另外你可能需要考虑启动和刷机——你有uboot吗?引导方式中特定于芯片的东西?如果从头开始做这件事,有很多事情要考虑,你最好为你的主板或类似的主板找到一个工作配置,即使是旧的 linux 内核。
-
感谢您的回复。让我具体说明我的要求。我需要为运行 2.6.21 内核的目标平台编译一个内核模块。如果我在目标系统上成功运行的其他模块上运行文件命令,它会显示“ELF 32-bit LSB relocatable, MIPS, MIPS32 version 1 (SYSV), not stripped”。
-
我下载了 2.6.21 内核,更新了 $ARCH 和 $CROSS_COMPILE 并编译了内核。现在,当我在模块 makefile 中指定此内核源路径时,它会构建一个用于 MIPSIII 和 MSB 的模块。 linux-2.6.21/.config 没有设置 CONFIG_MIPS32 和 CONFIG_LITTLE_ENDIAN 设置。所以我想在针对这个内核构建我的模块之前,我需要配置内核(至少修改这两个选项)。我的想法是否正确?如果不是,我的方法应该是什么?
-
另外,请告诉我是否可以在我的模块 Makefile 中指定这两个选项(mips32 和 'little endian')。那么make line是什么?
标签: configuration linux-kernel mips32