|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jan 2003
Città: osimo (AN)
Messaggi: 1469
|
errore di compilazione, parola ai programmatori
ciao a tutti, sto compilando i driver kyro sotto damn small linux, ma ho incontrato il primo vero problema:
dando il Codice:
make install Codice:
cc -O2 -DMODULE -DMODVERSIONS -include /usr/src/linux-2.4.26/include/linux/modversions.h -D__KERNEL__ -I/usr/src/linux-2.4.26/include -DLINUX -DGCC_IA32 -DSUPPORT_AGP -Idrm -DHAVE_VMA=0 -c -o module_drm.o module_drm.c In file included from module_drm.c:36: drm/drmP.h:265: error: redefinition of `__cmpxchg' /usr/src/linux-2.4.26/include/asm/system.h:245: error: `__cmpxchg' previously defined here make: *** [module_drm.o] Error 1 ps: il driver che sto compilando richiede il kernel 2.4.x e ci siamo dice che supporta gcc 3.x e ci siamo (gcc-3.3) come lo risolvo?? grazie a tutti Ultima modifica di macubo : 05-09-2006 alle 01:38. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2003
Città: osimo (AN)
Messaggi: 1469
|
dando uno sguardo al file incriminato drm/drmP.h noto, a ridosso della definizione del __cmpxchg che c'è una direttiva del compilatore (so solo che è una direttiva, non cosa fa):
Codice:
#ifndef --HAVE_ARCH_CMPXCHG Codice:
generic cmpxchg added in 2.3.x Codice:
include this here so that driver can be used with older kernels cmq vorrei provare a togliere questo blocco: Codice:
#define cmpxchg(ptr,o,n) \
({ \
__typeof__(*(ptr)) _o_ = (o); \
__typeof__(*(ptr)) _n_ = (n); \
(__typeof__(*(ptr))) __cmpxchg((ptr), (unsigned long)_o_, \
(unsigned long)_n_, sizeof(*(ptr))); \
})
suggerimenti? ciao! Ultima modifica di macubo : 05-09-2006 alle 01:37. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jan 2003
Città: osimo (AN)
Messaggi: 1469
|
a causa dei problemi di installazione su hd della damn-small l'ho abbandonata in favore di una sarge con kernel 2.4.27, ricompilata con supporto ai MTRR.
Il driver è compilato (per la prima volta in 6 anni), ora devo installare xfree e fluxbox. ciao |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:12.



















