实现 功能:在PC的LINUX实现驱动测试,不用在2440上测试

解决insmod: error inserting 'hello.ko': -1 Invalid module format

第一次写Linux驱动,环境搭建了好久,第一次可能是由于GCC的版本问题,编译出来的驱动只能insmod,而无法rmmod

然后是make时使用的内核版本和本系统的版本不一致,

导致出现insmod: error inserting 'hello.o' :-l invalid module format错误

我一直在玩开发板,下载的是linux-2.6.30内核,以前为 开发板编译驱动时,比较顺利。

而我的上位机linux系统是fedora10  实验需要,需要为我的上位机写一个驱动。可是写好了以后,

当我 insmod hello.ko时,却一直有一个错误

insmod: error inserting 'hello.ko': -1 Invalid module format。

网上一查,原因很明确:编译时用的hello.ko的kenerl 不是 我的pc的kenerl版本。

但解决起来,就比较麻烦了,百度一下,说什么要重新编译pc上的内核,还要修改grub。

PC机上的驱动,其实与开发板上的驱动 一点关系都没有。

我只要以pc机的内核为基准,在makefile 那改变内核路径就可以了,可以顺利地编译了!

注意,我是在fedora10 下

cd /usr/src

ls

发现内核头文件,如下

/usr/src/kernels/2.6.27.5-117.fc10.i686

解决方法:为生成hello.ko

其Makefile改为如下内容:

###############
  1 KERNELDIR=/usr/src/kernels/2.6.27.5-117.fc10.i686  //在此添加内核路径
  2
  3 PWD:=$(shell pwd)
  4 INSTALLDIR=$(PWD)
  5 #CC=arm-linux-gcc   
  6 CC=gcc

8 obj-m := hello.o
  9 modules:    
 10         $(MAKE) -C $(KERNELDIR) M=$(PWD) modules 
 11
 12 clean:    
 13         rm -rf *.o *.ko *.mod.c *.markers *.order *.symvers    
 14 .PHONY:modules clean

make

insmod hello.ko
看输出信息
cat /var/log/messages | tail -6
ubleshootd_t:s0 key=(null)
Oct  2 11:08:07 tdp setroubleshoot: SELinux is preventing updatedb (locate_t) "sys_resource" locate_t. For complete SELinux messages. run sealert -l 42f53b70-53bb-42db-b6cb-39c247a562ea
Oct  2 11:44:19 tdp kernel: Hello, world!!
Oct  2 11:44:19 tdp kernel: this is my hello world!!
哈哈 ,成功啦

解决insmod error inserting 'hello ko' -1 Invalid module form相关推荐

  1. insmod: error inserting 'simp-blkdev.ko': -1 Invalid module format

    (一) 今天写了个块设备驱动例子,在虚拟机上加载模块insmod simp_blkdev.ko的时候,出现以下错误. insmod: error inserting 'simple-blk.ko': ...

  2. insmod: error inserting 'xxx.ko': -1 Invalid module format

    乘着实验机器在编译内核,把以前遇到的一个问题也总结一下,本来之前运行得好好地模块,后来怎么突然不行了呢,具体问题如下: 该问题表示:内核模块编译的环境与现在insmod想要运行的环境不一致 这个可能是 ...

  3. insmod: error inserting 'myvivi.ko': -1 Unknown symbol in module 问题解决办法

    加载驱动时遇到:insmod: error inserting 'myvivi.ko': -1 Unknown symbol in module的问题,在网上查了下,解决办法如下: 1.用modinf ...

  4. insmod: error inserting './scull.ko': -1 Unknown symbol in module

    编译驱动的时候碰到了  insmod: error inserting './igb.ko': -1 Unknown symbol in module 的问题,在网上看了下,说是查看 dmesg |  ...

  5. insmod: error inserting 'memdev.ko': -1 File exists

    在写Linux驱动是,sudo insmod ***.ko时出现错误:insmod: error inserting 'memdev.ko': -1 File exists 原因可能是你以前同名的驱动 ...

  6. insmod: error inserting 'vivi.ko': -1 Unknown symbol in module 问题解决办法

    加载驱动时遇到:insmod: error inserting 'vivi.ko': -1 Unknown symbol in module的问题,在网上查了下,解决办法如下: 1.用modinfo  ...

  7. 驱动加载错误:insmod: error inserting 'hello.ko': -1 Device or resource busy

    一:insmod时候错误: 1:错误信息insmod: error inserting 'hello.ko': -1 Device or resource busy 2:原因:你的代码里面的设备号和系 ...

  8. Linux在加载模块时报insmod: error inserting xxx.ko -1 File exists这个错

    insmod: error inserting xxx.ko': -1 File exists 在写Linux块设备驱动时,insmod xxx.ko时出现错误:insmod: error inser ...

  9. insmod: error inserting ‘./module1.ko‘: -1 Unknown symbol in module

    到了Linux kernel 2.6.26版本及以后的内核版本,如果还按照以前的版本进行编译,就会出现错误 在make的时候会出现一条warning信息 如果不理睬这条信息,接着将module1.ko ...

最新文章

  1. 在OR项目中使用火焰图
  2. Python正则表达式 re.sub()函数:标志位flags与参数个数问题
  3. 用c语言实现存储和读取图片文件,C++实现单张图片读取和保存
  4. jdbc oracle添加数据库连接,JDBC与Oracle数据库连接最常用方法
  5. 2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - Python大学组 - A. 门牌制作
  6. Universal-Image-Loader解析(二)——DisplayImageOptions的详细配置与简单的图片加载...
  7. python实例属性与类属性_Python类属性与实例属性用法分析
  8. 剑指offer之连续子数组的最大和
  9. [转]深入理解C/C++ [Deep C (and C++)]
  10. 牛b硬件信息修改大师_比X大师更靠谱?一款真正良心的硬件检测工具
  11. linux 鼠标光标由箭头变成十字形恢复方法
  12. 小型局域网环境下搭建的文件中转系统
  13. FusionCharts 技术文档-drilldown map
  14. 金蝶凭证序时簿在哪_如何打开会计分录序时簿
  15. TODA项目Part1—后端项目设置与连接数据库
  16. python画图函数
  17. 第二章 04 魔镜世界
  18. HTML5网站大观:精美的 HTML5 商业网站设计案例
  19. 咱也谈谈如何炒股,如何买股票呗。
  20. 联想服务器的系统安装教程视频教程,联想服务器装linux系统怎么安装教程

热门文章

  1. python读文件完整代码_Python读写文件的代码示例
  2. python3实现百度翻译
  3. android 图片占用内存大小及加载解析
  4. A Game of Thrones(34)
  5. 关心国事-周鸿祎离开雅虎真相 自称土鳖更喜欢创业
  6. 基于JavaWeb的血站管理系统
  7. 解决 linux(centos7)word转换pdf时,pdf乱码问题
  8. cnPuTTY CAC 0.78.0.1—PuTTY CAC 0.78中文版本简单说明~~
  9. php毕业设计美食菜谱网站
  10. 贪心之最大相容子集合问题