[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Scheda video



On the last episode (Saturday 05 October 2002 14:05), Nick Name wrote:

> On Sat, 5 Oct 2002 10:52:59 +0200
>
> Paolo Ulivi <pulivi@libero.it> wrote:
> > A questo punto installare il pacchetto kernel-image e REBOOT.
>
> Io installo dai sorgenti presi dal sito nvidia, che non compilano se
> non esiste la directory /usr/src/linux che io sappia.

Nel tarball c'è scritto come fare (README):
  make SYSINCLUDE=/usr/src/kernel-headers-2.4.18
L' unica complicazione è che il kernel deve essere configurato, ma
questo allora vale anche se ce l' hai in /usr/src/linux e non l' hai
ricompilato affatto.  Dai un' occhiata al README, vedrai che è così.
Il sorgente nv.c include infatti <linux/config.h> che include a sua volta 
<linux/autoconf.h> che viene modificato dalla fase di configurazione.
Le fasi relative alla configurazione devi eseguirle in ogni caso per
avere il massimo di stabilità e portabilità, sennò ti ritrovi un modulo 
che è ottimizzato per un Kernel che non è quello che stai usando...
Questo può andar bene per una applicazione, ma non per un modulo del
kernel.

> Cmq non ho mai
> avuto problemi ed ho sempre tenuto quella directory, mi fido che c'è
> una ragione per non averla, semplicemente non mi era mai venuto in
> testa di leggere la documentazione specifica di debian per una cosa che
> avevo sempre fatto :)

A chi lo dici, io mi compilo i Kernel dal 1992, e uso Debian solo
da un anno...  Per ambientarmi un pò c'è n'è voluto del tempo... e
sicuramente ho ancora molto da imparare.

> Dicevo, per installare nvidia NON c'è bisogno di ricompilare il kernel
> e installarlo, e vorrei puntualizzare questo. Si può fare al volo senza
> neanche riavviare!

Lasciamo da parte la ricompilazione del Kernel per un attimo, se fai un:
  cat /usr/include/linux/version.h
su una Woody esce fuori questo:
#define UTS_RELEASE "2.4.18"
#define LINUX_VERSION_CODE 132114
#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))

Se a questo punto esegui un:
  dpkg --search /usr/include/linux/version.h
ti viene fuori questo:
libc6-dev: /usr/include/linux/version.h

Cioè su Debian gli headers del Kernel fanno parte della libreria C 
(GLIBC)!!!  Di più: fanno parte del pacchetto della glibc che serve per 
compilare!  Questo è *molto diverso da tutte le altre distro*, come sai, 
ed è anche per questo che le altre zoppicano mentre Debian vola.

> Magari poi il link /usr/src/linux lo si cancella
> dopo l'installazione se proprio non lo si vuole. Non si ottiene un
> pacchetto debian però.

Rileggendo i docs di nvidia-kernel-src ho scoperto questo link:
  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=108176
che punta ad un documento che descrive come creare il pacchetto debian
senza dover ricompilare il kernel, avendo solo gli include.  Non l' ho 
provato, però.  Ci sarebbe da farlo, senza ricompilare il Kernel ma
configurandolo però, per i motivi detti sopra.

> Vincenzo

Scusa molto la lungagnata, ma mi sono appassionato al problema!  :-)

Ciao,
Paolo

-- 
If Linux is not Unix then Windows are not Gates
                         Anonymous, XXI Century



Reply to: