【发布时间】:2013-07-19 14:16:21
【问题描述】:
我是交叉编译的新手。我必须交叉编译 Linux 内核,因为我打算将 wifi 模块与我的 TS-7500 SBC(ARM 处理器)一起使用,但它不支持它。我有我的 wifi 模块的驱动程序,通过网上冲浪,我了解了交叉编译的一般过程。但是,我对额外的模块部分有些困惑。以下是 TS-7500 官方网站上关于这些额外模块的信息:
附录 - 使用自定义选项编译 TS-Kernel 为了编译一个单独的内核模块并生成一个 .ko 文件以包含在现有内核中,这些是在步骤 08 之后执行并在上面的步骤 09 结束的步骤。注意:步骤 02 之后的步骤未经验证/未经测试。它们代表了人们将要经历的准确程序。
01.) 打开 menuconfig 并使用“M”模块化内核功能。为了
例如,要模块化 cifs.ko,可以使用箭头键和 Enter 键
导航到文件系统 -> 网络文件系统 -> CIFS 支持。
按“M”将 CIFS 支持模块化到内核中,然后继续点击
“退出”,直到系统提示您保存更改,选择“是”。
make menuconfig
02.) 使用模块编译内核并将模块复制到 Linux PC
make && make modules && make modules_install
03.) 使用如下命令检索复制到 Linux PC 的模块 cp 以便可以将其安装到 MiniSD 卡上的内核中。
mkdir /mnt/miniSD4
mount /dev/sdb4 /mnt/miniSD4
cp /lib/modules/2.6.24.4/kernel/fs/cifs/cifs.ko /mnt/miniSD4
04.) 通过从分区 4 复制粘贴将模块安装到内核中 卡到 SBC 上的分区 2。
cp -r /dev/nbd4/cifs.ko /dev/nbd2/lib/modules/2.6.24.4/kernel/fs/cifs/cifs.ko
05.) 最后,为了使用新模块,您必须启用它。这个可以 包含在启动脚本中,例如 linuxrc。
depmod
modprobe cifs.ko
我对序列号 2 感到困惑。谁能向我解释一下,我应该在哪里提供要安装的驱动程序的地址?
提前致谢。
【问题讨论】:
标签: linux-kernel arm cross-compiling kernel-module