内核ko模块strip使用
編譯一個(gè)內(nèi)核時(shí),習(xí)慣性的在install目標(biāo)下加了命令:
$(STRIP)? --strip-all --remove-section=.note --remove-section=.comment? test.ko
結(jié)果在insmod test.ko時(shí)出現(xiàn)錯(cuò)誤:
test: module has no symbols (stripped?)
..................
?上網(wǎng)查了以下,發(fā)現(xiàn)內(nèi)核模塊在插入時(shí),insmod會(huì)使用模塊的一些符號(hào)信息。那是不是內(nèi)核模塊不可以被stip呢?答案是可以strp 但不能strip太多東西,應(yīng)該使用:
$(STRIP)? --strip-debug test.ko
另外:內(nèi)核模塊的version magic的問題:
插入模塊出現(xiàn)錯(cuò)誤:
test: version magic '2.6.15 gcc-3.4' should be '2.6.14 gcc-3.4'
內(nèi)核模塊對(duì)應(yīng)的內(nèi)核版本不對(duì),可以修改內(nèi)核版本代號(hào)試一試:
修改liunx源碼下的Makefile 前面的版本定義,然后重新編譯內(nèi)核,再編譯內(nèi)核模塊。當(dāng)然這樣做可能會(huì)有副作用。
查看一個(gè)模塊的version magic信息:
$modinfo test.ko
file test.ko 也可以用于查看ko文件的信息
總結(jié)
以上是生活随笔為你收集整理的内核ko模块strip使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 输精管不通会造成不孕不育吗
- 下一篇: mkfs.jffs2参数详解