title: Cross-compile a kernel module
body: <p>I have some errors when I try to cross-compile a kernel module ARM :</p>
  
  <pre><code>make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi-
  make -C /lib/modules/4.4.0-57-generic/build M=/home/nari/Bureau modules
  make[1] : on entre dans le répertoire « /usr/src/linux-headers-4.4.0-57-generic »
    CC [M]  /home/nari/Bureau/hello.o
  In file included from include/asm-generic/int-ll64.h:10:0,
                   from ./arch/arm/include/asm/types.h:4,
                   from include/uapi/linux/types.h:4,
                   from include/linux/types.h:5,
                   from include/linux/list.h:4,
                   from include/linux/module.h:9,
                   from /home/nari/Bureau/hello.c:1:
  include/uapi/asm-generic/int-ll64.h:11:29: fatal error: asm/bitsperlong.h: Aucun fichier ou dossier de ce type
  compilation terminated.
  scripts/Makefile.build:264 : la recette pour la cible « /home/nari/Bureau/hello.o » a échouée
  make[2]: *** [/home/nari/Bureau/hello.o] Erreur 1
  Makefile:1420 : la recette pour la cible « _module_/home/nari/Bureau » a échouée
  make[1]: *** [_module_/home/nari/Bureau] Erreur 2
  make[1] : on quitte le répertoire « /usr/src/linux-headers-4.4.0-57-generic »
  Makefile:4 : la recette pour la cible « all » a échouée
  make: *** [all] Erreur 2
  </code></pre>
  
  <p>This is my makefile :</p>
  
  <pre><code>obj-m += hello.o
  
  all:
      make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
  
  clean:
      make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
  </code></pre>