depmod
分析可载入模块的相依性
补充说明
depmod命令 可产生模块依赖的映射文件,在构建嵌入式系统时,需要由这个命令来生成相应的文件,由modprobe使用。
语法
1depmod(选项)
选项
1-a或--all:分析所有可用的模块;
2-d或debug:执行排错模式;
3-e:输出无法参照的符号;
4-i:不检查符号表的版本;
5-m<文件>或system-map<文件>:使用指定的符号表文件;
6-s或--system-log:在系统记录中记录错误;
7-v或--verbose:执行时显示详细的信息;
8-V或--version:显示版本信息;
9--help:显示帮助。
实例
1depmod -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
是我build的linux的版本。
编译linux过程及执行depmod的例子:
1genkernel.sh (at linux-2.6.18_pro500)
2#######
3export INSTALL_ROOT_EMMA3PF="/home/windsome/EMMA3PF-KernelSource-20080626/install_pos"
4export INSTALL_MOD_EMMA3PF="/home/windsome/EMMA3PF-KernelSource-20080626/install_pos"
5rm /home/windsome/EMMA3PF-KernelSource-20080626/install_pos/lib -rf
6rm /home/windsome/EMMA3PF-KernelSource-20080626/install_pos/boot/* -rf
7cd <linux_src_dir>
8make
9make modules_install
10cp vmlinux System.map /home/windsome/EMMA3PF-KernelSource-20080626/install_pos/boot/ -p
11cd /home/windsome/EMMA3PF-KernelSource-20080626/install_pos
12depmod -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。
来源:https://github.com/jaywcjlove/linux-command
最后修改于: Wednesday, January 31, 2024
版权申明:
- 未标注来源的内容全部为原创,未经授权请勿转载(因转载后排版往往错乱、内容不可控、无法持续更新等);
- 非营利为目的,演绎本博客任何内容,请以'原文出处'或者'参考链接'等方式给出本站相关网页地址(方便读者)。