Sto provando a creare un modulo del kernel semplice ed eseguirlo sul Raspberry Pi. Ho scaricato i sorgenti del kernel dal sito ufficiale del lampone, ma hanno una versione del kernel leggermente diversa da quella del mio raspbian. È necessario avere una versione del kernel completamente identica sulla macchina di origine e di destinazione per eseguire il modulo del kernel? Ho questo sulla mia Raspberry PiVersione kernel per target e per modulo
$ uname -a
Linux raspberrypi 4.4.11+ #888 Mon May 23 20:02:58 BST 2016 armv6l GNU/Linux
E questo per il mio modulo
$ modinfo ./threads.ko
filename: /lib/modules/4.4.11+/kernel/mymodules/./threads.ko
version: 0.0.1
description: Kernel threads example
author: xxxxxx
license: GPL
srcversion: C906582EC824D2D8DA76BFB
depends:
vermagic: 4.4.13+ mod_unload modversions ARMv6
come vedete: "4.4.11+" vs "4.4.13 +" ... Perché sono chiedendo? Ho un errore quando il modulo di inserimento:
$ sudo insmod ./threads.ko
insmod: ERROR: could not insert module ./threads.ko: Invalid module format
E non capisco, è importante differenza di ultimo numero della versione del kernel o c'è un altro problema.
Grazie! Quindi, come posso passare a questa versione? – artsin
Ho fatto 'git fetch', quindi' git checkout v4.4.11' ma ho un errore: "errore: pathspec 'v4.4.11' non corrispondeva a nessun file noto per git." – artsin