Solution à l'ERREUR : modpost non défini rencontré lors de la compilation du module du noyau Linux ko

arrière-plan

Lorsque l'auteur compilait kole module, j'ai rencontré l'erreur suivante :
( modpostles invites sont toutes des fonctions couramment utilisées, telles que _printk, kfree, kmalloc, memsetetc.)

ERROR: modpost: "__raw_copy_from_user" [/home/geng/Item/nscscc_drivers/lcd/lcd.ko] undefined!
ERROR: modpost: "_printk" [/home/geng/Item/nscscc_drivers/lcd/lcd.ko] undefined!
ERROR: modpost: "nonseekable_open" [/home/geng/Item/nscscc_drivers/lcd/lcd.ko] undefined!
ERROR: modpost: "kmalloc_caches" [/home/geng/Item/nscscc_drivers/lcd/lcd.ko] undefined!
ERROR: modpost: "kmalloc_trace" [/home/geng/Item/nscscc_drivers/lcd/lcd.ko] undefined!
ERROR: modpost: "kfree" [/home/geng/Item/nscscc_drivers/lcd/lcd.ko] undefined!
ERROR: modpost: "warn_slowpath_fmt" [/home/geng/Item/nscscc_drivers/lcd/lcd.ko] undefined!
ERROR: modpost: "memset" [/home/geng/Item/nscscc_drivers/lcd/lcd.ko] undefined!
ERROR: modpost: "__register_chrdev" [/home/geng/Item/nscscc_drivers/lcd/lcd.ko] undefined!

Les messages d'erreur sont tous ERREUR : modpost !

J'ai déjà soupçonné qu'il y avait quelque chose qui n'allait pas avec mon Makefile, mon compilateur croisé, etc...

solution

Le problème réside dans le .configfichier de code source du noyau Linux !

CONFIG_TRIM_UNUSED_KSYMSÉteignez-le ! Pensez à revoir le code source Linux après modification make! Pensez à revoir le code source Linux après modification make!

Il peut être modifié via menuconfig. Voici le menuconfig de MIPS à titre d'exemple :
menuconfig menu de premier niveau Activer la prise en charge des modules chargeables
Désactivez Couper les symboles de noyau exportés inutilisés
Vous pouvez aussi directement .configfichier, mettre :

CONFIG_TRIM_UNUSED_KSYMS=y

Remplacez directement par

# CONFIG_TRIM_UNUSED_KSYMS is not set

Pensez à revoir le code source Linux après modification make! Pensez à revoir le code source Linux après modification make!

Guess you like

Origin blog.csdn.net/weixin_52027058/article/details/132019367