insmod: can't insert 'led.ko': invalid module format详细解释

2023-05-16


insmod: can't insert 'led.ko': invalid module format

之前在Imx257学习版固件编写的驱动想直接移植imx257核心板的开发板上。以为2个板子的源码的引脚定义一样就没什么问题了。殊不知问题很多。

我们输入dmesg |tail
 


在log中我们看到2个版本不匹配。

在这儿我们需要明白一个原理,我们编译驱动程序的Makefile


 
有一个KDIR指的是Linux源码文件,那个源码文件一定是编译过内核的源码文件那个内核应该就是你目标板正在运行的内核。

如果没有你的Makefile没有满足上述的情况你可能会出现下面情况


一、内核是纯净的没有编译过


 

你编译这个驱动可能会提示你丢失文件,或者出现内核的警告,即使生成了驱动文件加载也是失败,也许还看不到log


2、是编译过得内核但是内核的版本不对
我的项目使用周立功的固件,我是在学习版固件编写驱动自然在学习板上面加载都是ok。后面正式的项目改为工业板的固件,发现他们的内核版本的信息不对,导致出现上面的问题。解决方法
1、 可以在编译内核的时候禁止内核加载驱动时进行版本检测(特殊情况这样处理)
2、 使用正确的内核环境编写,就是用工业板的固件环境进行驱动编写
3、编译过的内核环境但编译的.config不一样
我们看驱动的Makefile中并没有写明编译的交叉工具链why?
因为驱动的编译会使用编译内核的交叉工具链,如果内核.config写错了,交叉工具链应该也是不对。那么我们的驱动编译的交叉工具链也会写错

我们可以使用如下命令查看


 
错误

观看vermagic 看到了gcc么这不是gcc编译的么,我需要arm-Linux-gcc。

总结
KDIR指的是Linux源码文件,那个源码文件一定是编译过内核的源码文件。那个内核应该就是你目标板正在运行的内核。


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

insmod: can't insert 'led.ko': invalid module format详细解释 的相关文章

  • 插入 SQLite 数据库的行数为负数

    我正在尝试将新记录插入SQLite数据库来自Python code con sqlite connect connectionString cur con cursor countOfNewItems 0 for try con execu
  • 如何在没有微控制器的情况下用 C++ 连接 LED 灯?

    我想在没有微控制器的情况下点亮 关闭 LED 我希望通过编写 C 程序来控制 LED 但我遇到的问题是把它们连接起来有没有免费的方法 如果相关的话 我正在使用 Windows XP 我有 LED 但没有微控制器 好吧 我找到了一些函数 但它
  • SQL中如何知道记录的插入日期

    我在用phpMyAdmin对于我的项目 我有一张没有的桌子date datetime field 我想知道是否有办法知道我何时在数据库中插入每条记录 在设计数据库时 如果您忘记保留一个额外的字段来存储一行的插入时间 那么您只剩下一个选项来了
  • PDO 插入重复密钥更新

    发布此问题后MySQL 更新或插入或死亡查询 https stackoverflow com questions 6074557 mysql update or insert or die query我已更改为使用 PDO 但在使用重复密钥
  • 子串、切片、其他?

    根据MDN https developer mozilla org en US docs Web JavaScript Reference Global Objects String substr substr被认为是最终可能被弃用的遗留代
  • 插入时数据类型不匹配(代码 20)

    在我的项目中 我使用 sqlite 数据库来保存图片及其位置 我在尝试将数据插入数据库时 收到此错误 E SQLiteLog 20 statement aborts at 5 INSERT INTO PHOTO VALUES NULL da
  • Android:数据库 sqLite 不插入表

    我试图将数据插入数据库 但添加后 当我检查数据库时 我得到一个空结果 这意味着它仍然是空的 我不知道错误在哪里 我做了一些日志 但没有看到错误 我确信我犯了一个愚蠢的错误 但我看不到它 此插入不起作用 bdd insert TABLE RS
  • MySQL插入不存在的地方/如果不存在

    我尝试过以下查询 INSERT INTO surfed site user site VALUES 123 456 WHERE NOT EXISTS SELECT site FROM surfed site WHERE site 456 但
  • MySQL触发器将字段更新为id的值

    我想要一个触发器来对插入的记录执行以下操作 pseudocode if new group id is null set new group id new id else don t touch it end 更清楚地说 假设我有一张包含三
  • SQL Server,无法在主键字段中插入空值?

    我已经准备好在这件事上抓狂了 我对 MS SQL 还很陌生 还没有在任何地方看到过类似的帖子 当我尝试做这样的声明时 INSERT INTO qcRawMatTestCharacteristic VALUES NULL 1 1 1 1 1
  • sqlite3 - 插入 - javascript 对象作为值

    使用 javascript 对象作为 sqlite3 插入的值的最简单的解决方案是什么 下面的代码不起作用 const values name John age 34 language english db run INSERT INTO
  • 在 Access 中使用自动编号 - INSERT 语句

    我在运行时遇到问题INSERT其中有一个自动编号作为 PK 字段的语句 我有一个自动递增long作为主键 然后是 4 个类型字段double 然而 Access 使用 ADO 似乎需要五个值作为插入语句 INSERT INTO MY TAB
  • Grails: .save(flush:flush, insert:true) 与 .save(flush:true) 有何不同

    在spring security生成的类中UserRole or SecUserSecRole 你可以随意称呼它 有一个命令可以创建一个new UserRole 并保存它 save flush flush insert true 这意味着什
  • 在 MySQL 服务启动时运行 SQL 查询

    我在 mysql 上创建了 HEAP ram 表以加快查询速度 但是mysql服务器重新启动后 我的堆表中的数据没有加载 我的正常表名 productsid 产品名称 状态为 myisam id gt 整数和自动增量 主键 产品名称 gt
  • 我可以检测 Android 设备上是否存在“LED 通知”吗?

    背景 我有一个带有通知的应用程序 我想支持 LED 通知 并且它运行良好 在我的偏好中 我允许用户自定义 LED 通知 问题 如果设备不支持 LED 自定义选项 我不想显示这些选项 因为这可能会让用户感到困惑 如果您拥有的只是廉价的 And
  • 插入事务和参数?

    我正在学习 VB Net 需要使用开源 System Data SQLite ADO Net 解决方案来处理 SQLite 数据库 我在 HOWTO 部分找到的示例仅是 C 语言的 有人可以在 VB Net 中提供一个简单的示例吗 我可以研
  • 在 PHP 中的任意位置插入数组中的新项目

    如何将新项目插入到数组的任意位置 例如数组的中间 您可能会发现这更直观一些 它只需要一个函数调用array splice http www php net manual en function array splice php origin
  • 如何在选择查询中创建新列

    在 MS Access 中 我想将新列插入到选择查询的返回结果中 新列的每一行都具有相同的值 例如 我的选择返回列 A B 我希望 C 成为选择查询创建的新列 A B C a1 b1 c a2 b2 c a3 b3 c select A B
  • 在 WPF FlowDocument 中的指定位置插入超链接

    我想以编程方式将 WPF 超链接元素插入 FlowDocument 中 目标是创建一个工具栏按钮 该按钮将获取 RichTextBox 中的一系列文本并将其替换为超链接 它与您在网络上看到的用于在 wiki 或博客 或 StackOverf
  • 如何使用 JDBC 将大型(或至少是重要的)BLOB 放入 Oracle 中?

    我正在开发一个应用程序来执行一些批处理 并且希望将输入和输出数据作为文件存储在 Oracle 数据库的 BLOB 字段中 Oracle版本是10g r2 使用如下的PreparedStatement setBinaryStream 方法会将

随机推荐

  • 无法打开“windows.h”文件、无法打开“kernel32.lib”文件解决方法

    无法打开 windows h 文件的解决做法 xff1a 在VS2008下的option VC 43 43 目录 添加包含文件路径中 xff0c 添加windows SDK目录 xff0c 例如这个 xff0c C Program File
  • ubuntu 搜索安装包的命令

    1 sudo apt cache search XXX
  • ubuntu让开机就打开蓝牙

    我的ubuntu默认就有蓝牙功能 xff0c 也可以用 xff0c 但每次重启就很要重新打开蓝牙 xff0c 很烦恼 xff0c 解决办法如下 xff1a 1 sudo apt get install blueman bluez 2 vim
  • 【百度OCR】java调用百度OCR接口实现文字识别

    百度智能云文字识别 https ai baidu com 创建应用 参考博客 xff1a Java基于百度API接口实现智慧文字识别 百度AI开放平台 xff0c 文字识别接口 获取access token 百度AI 对接百度AI 增值税发
  • 使用某个用户登录命令:kinit adminad

    使用某个用户登录命令 xff1a kinit admin admin 票据生成方法 xff1a hdfs 票据 su hdfs klist hdfs rdspproduction 64 CARS COM 票据 然后切换到155机器 执行 s
  • Python3+Selenium框架搭建

    Webdriver概述 Webdriver Selenium2 xff09 是一种用于Web应用程序的自动测试工具 xff0c Thoughtworks公司一个强大的基于浏览器的开源自动化测试工具 xff0c 通常用来编写web应用的自动化
  • 算法题1:字符序列交换(阿里巴巴笔试题)

    题目 xff1a 若初始序列为gbfcdae xff0c 那么至少需要多少次两两交换 xff0c 才能使该序列变为abcdefg xff1f 任给一个自由a g这7个字母组成的排列 xff0c 最坏的情况下需要至少多少次两两交换 xff0c
  • 写给前端的 Nest.js 教程——10分钟上手后端接口开发

    前言 这个教程的所有代码我都放在了我的 GitHub 仓库 xff1a Nest CRUD Demo 1 xff0c 欢迎大家点个 Star xff01 框架简介 Nest 是一个用于构建高效 xff0c 可扩展的 Node js 服务器端
  • NSPredicate谓词搜索使用小记

    iOS中的搜索正常情况下用NSPredicate都足以解决问题 比如我们有一个原数组 dataArraty NSPredicate predicate 61 NSPredicate predicateWithFormat 64 span c
  • extern和volatile的用法

    extern 的用法 extern的用法的对象主要是变量和函数 用extern声明外部变量 什么是外部变量 外部变量是指在文件或者函数外部定义的全局变量 外部变量仅定义一次并且在所有的函数之外 在一个文件内使用外部变量 作用域 xff1a
  • 抽象数据类型定义(ADT)

    一 抽象数据类型定义 xff08 ADT xff09 作用 xff1a 抽象数据类型可以使我们更容易描述现实世界 例 xff1a 用线性表描述学生成绩表 xff0c 用树或图描述遗传关系 定义 xff1a 一个数学模型以及定义在该模型上的一
  • Keil串口仿真调试

    用到的软件 Keil开发软件 虚拟串口软件 串口调试小助手 软件介绍 1 虚拟串口软件 对于笔记本电脑来说 xff0c 没有自带串口使用虚拟串口软件可以模拟真实的串口 程序可以利用虚拟串口与其他串口交换数据 Virtual Serial P
  • Qt学习之路【5】:静态Qt库下SQLite数据库无法加载驱动(QSQLITE driver not loaded)

    使用的Qt库 Qt4 8 6 交叉编译工具链 xff1a arm linux gcc 4 3 6 这个问题纠结了好久 刚开始我使用的是Qt的动态库 xff0c 没有出现这个问题 现在使用的是Qt的静态库出现了这个问题 xff1a QSqlD
  • 【群晖nas】阿里域名DDNS 配置外网访问(华硕AC68U路由端口映射)

    拓扑图 友情提示 xff1a 其实 xff0c 华硕的路由是提供了免费域名的 具体步骤 确保路由器的WAN口IP为公网地址 在 路由器管理 系统设置 界面 xff0c 允许 从互联网设置RT AC88U 步骤1 高级设置 系统管理 系统设置
  • 使用"conn / as sysdba"登录时报出"insufficient privileges"错的问题

    1 xff09 conn as sysdba 的认证方式 oracle数据库的三种登录验证方式 xff1a 操作系统身份认证 密码文件认证 数据库认证 而conn as sysdba是属于操作系统认证 原理 xff1a 电脑开机时登录的用户
  • 数码管消影问题总结

    1 消影方法1 先送段选数据后送位选数据时 xff0c 需要在中间加入一条语句P0 61 0xff 作用是消影 现在来分析一下是怎样 产生影的 xff1f 当dula 61 0后锁住了P0口的数据 xff0c 即P0口仍然保持着上次的段选数
  • 【linux学习】ubuntu下挂载window共享文件

    ubuntu下挂载window共享文件实现文件共享 第一步 xff1a 将要共享的window文件夹共享 第二步 在ubuntu下进行挂载 xff0c 完整语法 xff0c 如下 xff1a 第一种方式 mount t cifs 192 1
  • ROM、SDRAM、RAM、DRAM、SRAM、FLASH 的区别

    ROM 和 RAM 指的都是半导体存储器 xff0c ROM 是 Read Only Memory 的缩写 xff0c RAM是 Random Access Memory的缩写 ROM 在系统体质供电的时候仍然可以保存数据 xff0c 而R
  • 软件开发技术文档编写规范

    在项目开发过程中 xff0c 应该按要求编写好十三种文档 xff0c 文档编制要求具有针对性 精确性 清晰性 完整性 灵活性 可追溯性 可行性分析报告 xff1a 说明该软件开发项目的实现在技术上 经济上和社会因素上的可行性 xff0c 评
  • insmod: can't insert 'led.ko': invalid module format详细解释

    insmod can 39 t insert 39 led ko 39 invalid module format 之前在Imx257学习版固件编写的驱动想直接移植imx257核心板的开发板上 以为2个板子的源码的引脚定义一样就没什么问题了