Compiler la couche Ethernet de linux - Linux et OS Alternatifs
Marsh Posté le 22-11-2004 à 12:42:45
je pense oui, surtout que sans les erreurs on va pas aller bien loin
Marsh Posté le 22-11-2004 à 16:01:02
En effet 
voici Donc : 
 
cd /usr/src/linux-2.6.3/net/ethernet 
make pe2.o 
 
et voila le resultat 
" 
cc    -c -o pe2.o pe2.c 
In file included from /usr/include/linux/sched.h:11, 
                 from /usr/include/linux/mm.h:4, 
                 from pe2.c:2: 
/usr/include/linux/jiffies.h:16: error: parse error before "jiffies_64" 
/usr/include/linux/jiffies.h:20: error: parse error before "get_jiffies_64" 
In file included from /usr/include/linux/cpumask.h:8, 
                 from /usr/include/linux/sched.h:14, 
                 from /usr/include/linux/mm.h:4, 
                 from pe2.c:2: 
/usr/include/linux/bitmap.h: In function `bitmap_empty': 
/usr/include/linux/bitmap.h:15: error: `BITS_PER_LONG' undeclared (first use in this function) 
/usr/include/linux/bitmap.h:15: error: (Each undeclared identifier is reported only once 
/usr/include/linux/bitmap.h:15: error: for each function it appears in.) 
/usr/include/linux/bitmap.h: In function `bitmap_full': 
/usr/include/linux/bitmap.h:29: error: `BITS_PER_LONG' undeclared (first use in this function) 
/usr/include/linux/bitmap.h: In function `bitmap_equal': 
/usr/include/linux/bitmap.h:44: error: `BITS_PER_LONG' undeclared (first use in this function) 
/usr/include/linux/bitmap.h: In function `bitmap_shift_right': 
/usr/include/linux/bitmap.h:85: error: `__shr_tmp' undeclared (first use in this function) 
/usr/include/linux/bitmap.h: In function `bitmap_shift_left': 
/usr/include/linux/bitmap.h:98: error: `__shl_tmp' undeclared (first use in this function) 
/usr/include/linux/bitmap.h: In function `bitmap_weight': 
/usr/include/linux/bitmap.h:144: error: `BITS_PER_LONG' undeclared (first use in this function) 
In file included from /usr/include/linux/sched.h:14, 
                 from /usr/include/linux/mm.h:4, 
                 from pe2.c:2: 
/usr/include/linux/cpumask.h:10:5: missing binary operator before token "(" 
/usr/include/linux/cpumask.h:34:5: missing binary operator before token "(" 
In file included from /usr/include/linux/sched.h:20, 
                 from /usr/include/linux/mm.h:4, 
                 from pe2.c:2: 
/usr/include/asm/mmu.h: At top level: 
/usr/include/asm/mmu.h:13: error: field `sem' has incomplete type 
In file included from /usr/include/linux/signal.h:4, 
                 from /usr/include/linux/sched.h:24, 
                 from /usr/include/linux/mm.h:4, 
                 from pe2.c:2: 
/usr/include/linux/list.h:591:2: warning: #warning "don't include kernel headers in userspace" 
In file included from /usr/include/asm/siginfo.h:4, 
                 from /usr/include/linux/signal.h:7, 
                 from /usr/include/linux/sched.h:24, 
                 from /usr/include/linux/mm.h:4, 
                 from pe2.c:2: 
/usr/include/asm-generic/siginfo.h:53: error: size of array `_pad' is too large 
In file included from /usr/include/linux/sched.h:28, 
                 from /usr/include/linux/mm.h:4, 
                 from pe2.c:2: 
/usr/include/linux/completion.h:15: error: parse error before "wait_queue_head_t" 
/usr/include/linux/completion.h: In function `init_completion': 
/usr/include/linux/completion.h:26: error: dereferencing pointer to incomplete type 
/usr/include/linux/completion.h:27: error: dereferencing pointer to incomplete type 
In file included from /usr/include/linux/sched.h:29, 
                 from /usr/include/linux/mm.h:4, 
                 from pe2.c:2: 
/usr/include/linux/pid.h: At top level: 
/usr/include/linux/pid.h:18: error: field `task_list' has incomplete type 
/usr/include/linux/pid.h:19: error: field `hash_chain' has incomplete type 
/usr/include/linux/pid.h:24: error: field `pid_chain' has incomplete type 
In file included from /usr/include/linux/sched.h:30, 
                 from /usr/include/linux/mm.h:4, 
                 from pe2.c:2: 
/usr/include/linux/percpu.h: In function `__alloc_percpu': 
/usr/include/linux/percpu.h:46: error: `GFP_KERNEL' undeclared (first use in this function) 
In file included from /usr/include/linux/sched.h:101, 
                 from /usr/include/linux/mm.h:4, 
                 from pe2.c:2: 
/usr/include/linux/timer.h: At top level: 
/usr/include/linux/timer.h:10: error: field `entry' has incomplete type 
In file included from /usr/include/linux/highmem.h:8, 
                 from /usr/include/linux/skbuff.h:27, 
                 from pe2.c:5: 
/usr/include/asm/cacheflush.h:25: error: parse error before "pgprot_t" 
pe2.c:7:26: net/datalink.h: No such file or directory 
pe2.c:10: warning: `struct datalink_proto' declared inside parameter list 
pe2.c: In function `pEII_request': 
pe2.c:17: error: dereferencing pointer to incomplete type 
pe2.c:18: error: dereferencing pointer to incomplete type 
pe2.c: In function `make_EII_client': 
pe2.c:25: error: dereferencing pointer to incomplete type 
pe2.c:25: error: `GFP_ATOMIC' undeclared (first use in this function) 
pe2.c:25: warning: initialization makes pointer from integer without a cast 
pe2.c:28: error: dereferencing pointer to incomplete type 
pe2.c:29: error: dereferencing pointer to incomplete type 
make: *** [pe2.o] Erreur 1 
"
Marsh Posté le 22-11-2004 à 16:01:53
sans avoir toucher à pe2.c auparavant, c'est donc l'original de la pile Linux
Marsh Posté le 22-11-2004 à 11:45:53
Bonjour,
je sais le titre n'est pas très clair.
Voici mon problème dans le cadre d'un projet "pile réseau Java sur Linux".
Je veux modifier la couche Ethernet de Linux et donc la recompiler et l'intégrer. A chaque fois que je tente un gcc, linux me renvoie à des erreurs dans les librairies .h qui sont pourtant les siennes (linux/random.h par exemple).
Que pensez vous de cette erreur ?
PS : peut etre que ce topic serait mieux dans programmation ?