首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【linux命令讲解大全】028.深入了解depmod命令:模块依赖分析与构建

【linux命令讲解大全】028.深入了解depmod命令:模块依赖分析与构建

作者头像
全栈若城
发布于 2024-03-02 11:34:59
发布于 2024-03-02 11:34:59
1.1K0
举报
文章被收录于专栏:若城技术专栏若城技术专栏

depmod

分析可载入模块的相依性

补充说明

depmod命令可产生模块依赖的映射文件,用于构建嵌入式系统。这些生成的文件将被modprobe命令使用。

语法

代码语言:javascript
复制
depmod [选项]

选项

  • -a 或 --all:分析所有可用的模块;
  • -d 或 --debug:执行排错模式;
  • -e:输出无法参照的符号;
  • -i:不检查符号表的版本;
  • -m <文件> 或 --system-map <文件>:使用指定的符号表文件;
  • -s 或 --system-log:在系统记录中记录错误;
  • -v 或 --verbose:执行时显示详细的信息;
  • -V 或 --version:显示版本信息;
  • --help:显示帮助。

实例

代码语言:javascript
复制
depmod -b /home/windsome/EMMA3PF-KernelSource-20080626/install_pos -e -F ./boot/System.map -v 2.6.18_pro500-bcm91250-mips2_fp_be -A -a

其中,/home/windsome/EMMA3PF-KernelSource-20080626/install_pos 是通过执行 make mod_install 后,存放所有模块的路径。 ./boot/System.map 是通过执行 make linux 后生成的文件,并将其拷贝到了当前目录。 2.6.18_pro500-bcm91250-mips2_fp_be 是我编译的 Linux 版本。

以下是编译 Linux 过程和执行 depmod 的示例:

代码语言:javascript
复制
genkernel.sh (at linux-2.6.18_pro500)
#######
export INSTALL_ROOT_EMMA3PF="/home/windsome/EMMA3PF-KernelSource-20080626/install_pos"
export INSTALL_MOD_EMMA3PF="/home/windsome/EMMA3PF-KernelSource-20080626/install_pos"
rm /home/windsome/EMMA3PF-KernelSource-20080626/install_pos/lib -rf
rm /home/windsome/EMMA3PF-KernelSource-20080626/install_pos/boot/* -rf
cd <linux_src_dir>
make
make modules_install
cp vmlinux System.map /home/windsome/EMMA3PF-KernelSource-20080626/install_pos/boot/ -p
cd /home/windsome/EMMA3PF-KernelSource-20080626/install_pos
depmod -b /home/windsome/EMMA3PF-KernelSource-20080626/install_pos -e -F ./boot/System.map -v 2.6.18_pro500-bcm91250-mips2_fp_be -A -a

另外,以下是在 Linux 桌面系统中的另一种用法:当你编译了新的驱动时,为了能够使用 modprobe *** 加载模块,你需要先将模块拷贝到 /lib/modules/2.6.31-20-generic 目录下,然后运行 sudo depmod -a,以将模块信息写入 modules.dep、modules.dep.bin、modules.alias.bin、modules.alias 和 modules.pcimap 文件中。

例如,当我编译了一个新的 WiFi 驱动 r8192se_pci.ko 时,我会将它拷贝到 /lib/modules/2.6.31-20-generic/wireless 目录下,然后在 /lib/modules/2.6.31-20-generic 目录下运行 depmod -a,之后就可以在任意目录下运行 modprobe r8192se_pci。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-02-29,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • depmod
    • 补充说明
    • 语法
    • 选项
    • 实例
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档