Projet

Général

Profil

Bug #1969

Virtualbox refuse de compiler ses modules en chroot si kernel serveur != i386

Ajouté par Eric Seigne il y a presque 8 ans. Mis à jour il y a plus de 7 ans.

Statut:
Fixed - Corrigé - Implémenté
Priorité:
Normale
Assigné à:
Début:
27/02/2012
Echéance:
% réalisé:

100%

Temps estimé:
4.00 h

Description

Tout est dans le titre, le chroot qui me permet de builder l'image du CD Live n'est pas utilisable pour compiler les modules DKMS !


Demandes liées

Lié à abuledu-dvd-client et client lourd - Task - Tâche #1951: Mise à jour cf ubuntu 10.04.4 LTS Fixed - Corrigé - Implémenté 22/02/2012
Lié à abuledu-dvd-client et client lourd - Bug #2001: Message d'erreur pour virtualbox-ose-guest-dkms Fixed - Corrigé - Implémenté 07/03/2012

Historique

#1 Mis à jour par Eric Seigne il y a presque 8 ans

  • % réalisé changé de 0 à 50

Bon, j'ai passé du temps dessus hier mais j'ai oublié de notifier ...

dpkg-reconfigure virtualbox-ose-guest-dkms
Loading new virtualbox-ose-guest-3.2.8 DKMS files...
Building only for 2.6.32-39-generic
Building initial module for 2.6.32-39-generic

Error! Bad return status for module build on kernel: 2.6.32-39-generic (x86_64)
Consult the make.log in the build directory /var/lib/dkms/virtualbox-ose-guest/3.2.8/build/ for more information.

Et le log dit ceci

DKMS make.log for virtualbox-ose-guest-3.2.8 for kernel 2.6.32-39-generic (x86_64)
Mon Feb 27 10:13:42 UTC 2012
make: Entering directory `/usr/src/linux-headers-2.6.32-39-generic'
  LD      /var/lib/dkms/virtualbox-ose-guest/3.2.8/build/vboxguest/built-in.o
  CC [M]  /var/lib/dkms/virtualbox-ose-guest/3.2.8/build/vboxguest/VBoxGuest-linux.o
In file included from /var/lib/dkms/virtualbox-ose-guest/3.2.8/build/r0drv/linux/the-linux-kernel.h:34,
                 from /var/lib/dkms/virtualbox-ose-guest/3.2.8/build/vboxguest/VBoxGuest-linux.c:27:
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/types.h:166: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'uint128_t'
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/types.h:185: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'int128_t'
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/types.h:340: error: expected specifier-qualifier-list before 'uint128_t'
In file included from /var/lib/dkms/virtualbox-ose-guest/3.2.8/build/vboxguest/VBoxGuest-linux.c:35:
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h: In function 'ASMAtomicXchgPtr':
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:467: warning: cast from pointer to integer of different size
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:467: warning: cast to pointer from integer of different size
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h: In function 'ASMAtomicXchgR0Ptr':
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:499: warning: cast from pointer to integer of different size
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:499: warning: cast to pointer from integer of different size
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h: In function 'ASMAtomicCmpXchgPtr':
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:856: warning: cast from pointer to integer of different size
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:856: warning: cast from pointer to integer of different size
In file included from /var/lib/dkms/virtualbox-ose-guest/3.2.8/build/vboxguest/VBoxGuest-linux.c:35:
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h: In function 'ASMAtomicCmpXchgExPtr':
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:1183: warning: cast from pointer to integer of different size
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:1183: warning: cast from pointer to integer of different size
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h: In function 'ASMAtomicReadPtr':
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:1911: warning: cast to pointer from integer of different size
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h: In function 'ASMAtomicUoReadPtr':
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:1929: warning: cast to pointer from integer of different size
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h: In function 'ASMAtomicWritePtr':
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:2295: warning: cast from pointer to integer of different size
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h: In function 'ASMAtomicUoWritePtr':
/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/include/iprt/asm.h:2314: warning: cast from pointer to integer of different size
make[2]: *** [/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/vboxguest/VBoxGuest-linux.o] Error 1
make[1]: *** [/var/lib/dkms/virtualbox-ose-guest/3.2.8/build/vboxguest] Error 2
make: *** [_module_/var/lib/dkms/virtualbox-ose-guest/3.2.8/build] Error 2
make: Leaving directory `/usr/src/linux-headers-2.6.32-39-generic'

En bref il fait un uname pour savoir pour quel processeur il doit compiler ... et comme on est dans un chroot il utilise la version kernel du serveur (amd64) alors qu'on est dans un chroot i386 et paf.

Donc à faire un rsync -> pc i386 pour compiler dessus et ensuite retour du rsync.

#2 Mis à jour par Eric Seigne il y a presque 8 ans

  • Statut changé de Assigned - En cours à Fixed - Corrigé - Implémenté
  • % réalisé changé de 50 à 100

Le solution est un peu énervée et il faudra s'en souvenir !!!

  • sur le serveur dev: ajout d'un export NFS en accès complet root
#pour recompiler DKMS VBOX
#/home/devel/lucid/abuledu-client/chroot/ 192.168.100.200(rw,no_root_squash,no_subtree_check)
  • ensuite on boote sur le DVD Live "foireux" (au niveau DKMS j'entends)
  • on monte le partage nfs
apt-get install nfs-common
mount -t nfs dev:/home/devel/lucid/abuledu-client/chroot/ /mnt
chroot /mnt
dpkg-reconfigure virtualbox-ose-guest-dkms
  • on sort du chroot et on stoppe le serveur NFS sur dev pour éviter les surprises ...

et c'est tout :)

#3 Mis à jour par Eric Seigne il y a plus de 7 ans

Bon, solution pourrie mais qui marche a tous les coups, j'ai remplacé "uname -m" par "i686" chaque fois que c'était présent dans /usr/sbin/dkms et mis arch="i686" dans /usr/lib/dkms/dkms_autoinstaller ...

C'est fait manuellement, je n'ai pas refait le paquet dkms pour ça ...

Formats disponibles : Atom PDF

Redmine Appliance - Powered by TurnKey Linux