当前位置: 技术问答>linux和unix
大家看看这个有没有人懂得(谢)Linux
来源: 互联网 发布时间:2016-06-01
本文导语: (1)更改mtdram.c->mtdram2.c 首先在 /usr/src/linux/drivers/mtd/devices 下面有mtdram.c 另存新檔成 mtdram2.c 要改的部分有....... (2)編譯 在/usr/src/linux 下輸入 # make drivers/mtd/devices/ 會把更新過的 source code 編譯,做出新的object f...
(1)更改mtdram.c->mtdram2.c
首先在
/usr/src/linux/drivers/mtd/devices 下面有mtdram.c
另存新檔成 mtdram2.c
要改的部分有.......
(2)編譯
在/usr/src/linux 下輸入
# make drivers/mtd/devices/
會把更新過的 source code 編譯,做出新的object file (.o檔)
然後
# make SUBDIRS=drivers/mtd/devices
會產生 kernel object file (.ko檔)
(3)掛載module
將生出來的mtdram2.ko搬到........
/lib/modules/2.6.13-15.8-default/kernel/drivers/mtd/devices 之下
(這裡原本就有mtdram.ko了)
# modprobe mtdram2
結果:
FATAL: Module mtdram2 not found.
但是原本的
# modprobe mtdram 這是ok的..
目前想不出哪邊有問題
首先在
/usr/src/linux/drivers/mtd/devices 下面有mtdram.c
另存新檔成 mtdram2.c
要改的部分有.......
(2)編譯
在/usr/src/linux 下輸入
# make drivers/mtd/devices/
會把更新過的 source code 編譯,做出新的object file (.o檔)
然後
# make SUBDIRS=drivers/mtd/devices
會產生 kernel object file (.ko檔)
(3)掛載module
將生出來的mtdram2.ko搬到........
/lib/modules/2.6.13-15.8-default/kernel/drivers/mtd/devices 之下
(這裡原本就有mtdram.ko了)
# modprobe mtdram2
結果:
FATAL: Module mtdram2 not found.
但是原本的
# modprobe mtdram 這是ok的..
目前想不出哪邊有問題
|
modprobe 使用之前,运行 depmod 让记载内核符号表的依赖关系文件更新。详情可参考 depmod 的帮助文档。
|
modprobe, 如同 insmod, 加载一个模块到内核. 它的不同在于它会查看要加载的模块, 看是否它引用了当前内核没有定义的符号. 如果发现有, modprobe 在定义相关符号的当前模块搜索路径中寻找其他模块. 当 modprobe 找到这些模块( 要加载模块需要的 ), 它也把它们加载到内核. 如果你在这种情况下代替以使用 insmod , 命令会失败, 在系统日志文件中留下一条 " unresolved symbols "消息.