[uClinux] Erreurs à la compilation

Erreurs à la compilation [uClinux] - Installation - Linux et OS Alternatifs

Marsh Posté le 04-02-2008 à 21:52:17    

Salut,
 
J'essai de compiler un uClinux pour mettre sur une carte de test Freescale. Pour les kernels 2.4 et 2.6 pas de soucis, en revanche pour le kernel 2.0 la compil ne passe pas; j'obtiens un truc infame :  
 

Code :
  1. francois@debian:~/uClinux-dist$ make
  2. make -C tools/ucfront
  3. make[1]: entrant dans le répertoire « /home/francois/uClinux-dist/tools/ucfront »
  4. make[1]: Rien à faire pour « all ».
  5. make[1]: quittant le répertoire « /home/francois/uClinux-dist/tools/ucfront »
  6. ln -sf /home/francois/uClinux-dist/tools/ucfront/ucfront tools/ucfront-gcc
  7. ln -sf /home/francois/uClinux-dist/tools/ucfront/ucfront tools/ucfront-g++
  8. ln -sf /home/francois/uClinux-dist/tools/ucfront/ucfront-ld tools/ucfront-ld
  9. make ARCH=m68knommu CROSS_COMPILE=m68k-elf- -j1 -C linux-2.0.x  || exit 1
  10. make[1]: entrant dans le répertoire « /home/francois/uClinux-dist/linux-2.0.x »
  11. m68k-elf-gcc -g -D__KERNEL__ -I/home/francois/uClinux-dist/linux-2.0.x/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strength-reduce -I../include -pipe -DNO_MM -DNO_FPU -m5200 -Wa,-S -Wa,-m5200 -D__ELF__ -DMAGIC_ROM_PTR -DUTS_SYSNAME='"uClinux"' -DUTS_MACHINE='"m68knommu"' -c -o init/version.o init/version.c
  12. set -e; for i in arch/m68knommu/kernel arch/m68knommu/mm arch/m68knommu/lib arch/m68knommu/platform/5407 kernel drivers fs net ipc lib mmnommu; do make -C $i; done
  13. make[2]: entrant dans le répertoire « /home/francois/uClinux-dist/linux-2.0.x/arch/m68knommu/kernel »
  14. make[2]: Rien à faire pour « all ».
  15. make[2]: quittant le répertoire « /home/francois/uClinux-dist/linux-2.0.x/arch/m68knommu/kernel »
  16. make[2]: entrant dans le répertoire « /home/francois/uClinux-dist/linux-2.0.x/arch/m68knommu/mm »
  17. make all_targets
  18. make[3]: entrant dans le répertoire « /home/francois/uClinux-dist/linux-2.0.x/arch/m68knommu/mm »
  19. make[3]: Rien à faire pour « all_targets ».
  20. make[3]: quittant le répertoire « /home/francois/uClinux-dist/linux-2.0.x/arch/m68knommu/mm »
  21. make[2]: quittant le répertoire « /home/francois/uClinux-dist/linux-2.0.x/arch/m68knommu/mm »
  22. make[2]: entrant dans le répertoire « /home/francois/uClinux-dist/linux-2.0.x/arch/m68knommu/lib »
  23. make all_targets
  24. make[3]: entrant dans le répertoire « /home/francois/uClinux-dist/linux-2.0.x/arch/m68knommu/lib »
  25. m68k-elf-gcc -g -D__KERNEL__ -I/home/francois/uClinux-dist/linux-2.0.x/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strength-reduce -I../include -pipe -DNO_MM -DNO_FPU -m5200 -Wa,-S -Wa,-m5200 -D__ELF__ -DMAGIC_ROM_PTR -DUTS_SYSNAME='"uClinux"'  -c -o checksum.o checksum.c
  26. In file included from /home/francois/uClinux-dist/linux-2.0.x/include/asm/system.h:6,
  27.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/sched.h:26,
  28.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/mm.h:4,
  29.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/malloc.h:4,
  30.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/skbuff.h:146,
  31.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/netdevice.h:62,
  32.                  from /home/francois/uClinux-dist/linux-2.0.x/include/net/ip.h:27,
  33.                  from /home/francois/uClinux-dist/linux-2.0.x/include/net/checksum.h:22,
  34.                  from checksum.c:34:
  35. /home/francois/uClinux-dist/linux-2.0.x/include/asm/segment.h: In function ‘__generic_memcpy_tofs’:
  36. /home/francois/uClinux-dist/linux-2.0.x/include/asm/segment.h:136: warning: implicit declaration of function ‘memcpy’
  37. /home/francois/uClinux-dist/linux-2.0.x/include/asm/segment.h:136: warning: incompatible implicit declaration of built-in function ‘memcpy’
  38. /home/francois/uClinux-dist/linux-2.0.x/include/asm/segment.h: In function ‘__constant_memcpy_tofs’:
  39. /home/francois/uClinux-dist/linux-2.0.x/include/asm/segment.h:171: warning: incompatible implicit declaration of built-in function ‘memcpy’
  40. /home/francois/uClinux-dist/linux-2.0.x/include/asm/segment.h: In function ‘__generic_memcpy_fromfs’:
  41. /home/francois/uClinux-dist/linux-2.0.x/include/asm/segment.h:241: warning: incompatible implicit declaration of built-in function ‘memcpy’
  42. /home/francois/uClinux-dist/linux-2.0.x/include/asm/segment.h: In function ‘__constant_memcpy_fromfs’:
  43. /home/francois/uClinux-dist/linux-2.0.x/include/asm/segment.h:276: warning: incompatible implicit declaration of built-in function ‘memcpy’
  44. In file included from /home/francois/uClinux-dist/linux-2.0.x/include/linux/termios.h:5,
  45.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/tty.h:20,
  46.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/sched.h:31,
  47.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/mm.h:4,
  48.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/malloc.h:4,
  49.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/skbuff.h:146,
  50.                  from /home/francois/uClinux-dist/linux-2.0.x/include/linux/netdevice.h:62,
  51.                  from /home/francois/uClinux-dist/linux-2.0.x/include/net/ip.h:27,
  52.                  from /home/francois/uClinux-dist/linux-2.0.x/include/net/checksum.h:22,
  53.                  from checksum.c:34:
  54. /home/francois/uClinux-dist/linux-2.0.x/include/asm/termios.h: In function ‘trans_from_termio’:
  55. /home/francois/uClinux-dist/linux-2.0.x/include/asm/termios.h:70: warning: incompatible implicit declaration of built-in function ‘memcpy’
  56. /home/francois/uClinux-dist/linux-2.0.x/include/asm/termios.h: In function ‘trans_to_termio’:
  57. /home/francois/uClinux-dist/linux-2.0.x/include/asm/termios.h:84: warning: incompatible implicit declaration of built-in function ‘memcpy’
  58. In file included from /home/francois/uClinux-dist/linux-2.0.x/include/linux/netdevice.h:62,
  59.                  from /home/francois/uClinux-dist/linux-2.0.x/include/net/ip.h:27,
  60.                  from /home/francois/uClinux-dist/linux-2.0.x/include/net/checksum.h:22,
  61.                  from checksum.c:34:
  62. /home/francois/uClinux-dist/linux-2.0.x/include/linux/skbuff.h: In function ‘skb_put’:
  63. /home/francois/uClinux-dist/linux-2.0.x/include/linux/skbuff.h:411: error: label at end of compound statement
  64. /home/francois/uClinux-dist/linux-2.0.x/include/linux/skbuff.h: In function ‘skb_push’:
  65. /home/francois/uClinux-dist/linux-2.0.x/include/linux/skbuff.h:424: error: label at end of compound statement
  66. checksum.c: In function ‘csum_partial_copy_fromuser’:
  67. checksum.c:143: warning: pointer targets in passing argument 1 of ‘csum_partial’ differ in signedness
  68. checksum.c: In function ‘csum_partial_copy’:
  69. checksum.c:154: warning: pointer targets in passing argument 1 of ‘csum_partial’ differ in signedness
  70. make[3]: *** [checksum.o] Erreur 1
  71. make[3]: quittant le répertoire « /home/francois/uClinux-dist/linux-2.0.x/arch/m68knommu/lib »
  72. make[2]: *** [first_rule] Erreur 2
  73. make[2]: quittant le répertoire « /home/francois/uClinux-dist/linux-2.0.x/arch/m68knommu/lib »
  74. make[1]: *** [linuxsubdirs] Erreur 2
  75. make[1]: quittant le répertoire « /home/francois/uClinux-dist/linux-2.0.x »
  76. make: *** [linux] Erreur 1


 
Pouvez vous me donner des conseils pour résoudre ce genre de problèmes ?


Message édité par kerplunk le 05-02-2008 à 00:31:53
Reply

Marsh Posté le 04-02-2008 à 21:52:17   

Reply

Marsh Posté le 05-02-2008 à 08:14:01    

Salut,
 
Des fonctions comme generic_memcpy_tofs ne sont pas disponibles sur toutes les architectures. Es-tu certain qu'elle existe pour freescale?
Regarde si elle existe dans le répertoire de ton architecture.
 
vw.

Reply

Marsh Posté le 05-02-2008 à 19:22:51    

j'imagine que oui, les 3 linux (2.0, 2.4 et 2.6) sont fournis dans les sources d'uClinux. Ensuite je choisis mon architecture dans le xconfig. Comment puis-je savoir plus précisemment si cette fonction est dispo ou non ?

Reply

Marsh Posté le 05-02-2008 à 22:25:06    

Tu peux rechercher dans les .h et .asm si elle est déclarée.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed