匿名
未登录
登录
百问网嵌入式Linux wiki
搜索
查看“ELADCMSecondEditionChapterFivePartXVII”的源代码
来自百问网嵌入式Linux wiki
名字空间
页面
讨论
更多
更多
页面选项
Read
查看源代码
历史
←
ELADCMSecondEditionChapterFivePartXVII
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
__NOTITLE__ ==常见问题== ===安装驱动时version magic不匹配=== : 要想彻底了解内核的LOCALVERSION信息,可以看这个贴子: :: [https://blog.csdn.net/gatieme/article/details/78510497 https://blog.csdn.net/gatieme/article/details/78510497] : 总结一下: :: ① 开发板所用的内核版本: ::: 在开发板上执行“uname -r”命令,可以得到开发板所用内核的版本,比如: :::: [[File:EmbeddedLinuxApplicationDevelopmentCompleteManualSecondEditionChapterFive_147.png|200px]] :: ② 在服务器中给开发板编译内核时,这个内核也有一个版本: ::: 进入该内核源码目录,执行“make kernelrelease”命令,可以得到它的版本,比如: :::: [[File:EmbeddedLinuxApplicationDevelopmentCompleteManualSecondEditionChapterFive_148.png|800px]] :: ③ 编译驱动时,会用到服务器中开发板的内核源码,会带有它的版本信息。 ::: 如果①②③的版本信息不匹配,很可能导致驱动程序无法加载,比如: :::: [[File:EmbeddedLinuxApplicationDevelopmentCompleteManualSecondEditionChapterFive_149.png|800px]] :::: 有2个解决方法: ::::: A. 在Ubuntu上重新编译内核,让开发板使用新的内核启动;重新编译驱动,加载新驱动: :::::: 这样,①②③三者的内核版本就都一致了。 :::::: 但是,这种方法有时候不好用,比如开发板上的内核无法更改(出厂固化了),或者你没有开发板上所用内核的全部源码无法编译出内核,这时就可以使用下面的方法。 ::::: B. 在Ubuntu上修改版本号,改为开发板上“uname -r”的结果,然后重新编译内核和驱动: :::::: 开发板就可以继续使用原来的内核,并且可以加载编译出来的驱动了。 :::::: 步骤如下: ::::::: b.1 修改Ubuntu上开发板内核源码顶层目录Makefile,如下图: :::::::: [[File:EmbeddedLinuxApplicationDevelopmentCompleteManualSecondEditionChapterFive_150.png|600px]] ::::::: b.2 重新编译内核,这会生成一些头文件,供驱动使用 ::::::: b.3 重新编译驱动 [[Category:嵌入式Linux应用开发完全手册第2版]]
返回至
ELADCMSecondEditionChapterFivePartXVII
。
导航
导航
WIKI首页
官方店铺
资料下载
交流社区
所有页面
所有产品
MPU-Linux开发板
MCU-单片机开发板
Linux开发系列视频
单片机开发系列视频
所有模块配件
Wiki工具
Wiki工具
特殊页面
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志