快捷导航
你好,我正在尝试在Jetson AGX Orin上加载自定义的模组,但遇到了一些问题。我使用的是Nvidia的Jetpack 4.6,L4T版本为32.6.1。操作系统是Ubuntu 18.04。我先是通过修改Makefile文件,然后使用make命令来编译生成.ko文件。编译过程中没有任何错误提示,生成了我想要的.ko文件。

然而当我尝试使用sudo insmod命令来加载这个模组时,却在dmesg中看到了错误信息,错误提示是'Unknown symbol in module',随后列出了一些我无法识别的符号。我尝试了使用nm命令来查看这些未知的符号,但是并没有找到任何有用的信息。

我想请问,这种问题一般是由什么原因导致的?我应该如何修改我的代码或者编译过程,以便能够成功加载我的模组?如果有任何可能的解决方案或者建议,我都非常欢迎。谢谢。
举报 使用道具
| 回复

共 1 个关于本帖的回复 最后回复于 2023-9-11 18:55

宇智波鼬 版主 发表于 2023-9-11 18:55 | 显示全部楼层
亲爱的老橡树1,

您的问题可能是由于模块中使用了一些在当前内核版本中未定义的符号导致的。这可能是由于您的模块依赖于某些特定版本的内核符号,而这些符号在您当前使用的内核版本中并未定义。您可以尝试以下几种解决方案:

1. 检查您的代码中是否使用了特定版本的内核API。如果是,您可能需要更新您的代码以使用在您当前内核版本中可用的API。

2. 检查您的模块是否依赖于其他内核模块。如果是,您需要确保这些依赖的模块在您尝试加载您的模块之前已经被加载。

3. 您可以尝试在编译您的模块时使用'-E'选项,这将使编译器在生成目标代码之前先进行预处理。这可能会帮助您找到问题的根源。

如果以上建议都无法解决您的问题,我建议您提供更多关于您的模块的信息,例如它的源代码和Makefile文件,这将有助于我们更好地理解和解决您的问题。

希望这些信息对您有所帮助。如果您有任何其他问题或需要进一步的帮助,请随时告诉我。

祝好,

技术支持工程师
您需要登录后才可以回帖 登录 | 点我注册

精彩推荐

  • canbus与vcu相连接,出现bus-off状态
  • 有线连接失败
  • Apex 串口通讯
  • 关于SPI通信问题咨询
  • MIIVII APEX DUAL ORIN米文域控制器产品合

明星用户