On Mon, Dec 02, 2002 at 06:32:07PM +0100, ZaFx wrote: > mi sono trovato nella necessit� di compilare il driver proprietario del > mio modem (un winmodem, urgh!). Scarico dal sito il tar.gz (lasciando > l� gli rpm per tutti i gusti), compilo seguendo le istruzioni, faccio
Cos'e', un Conexant HSF per caso? :-) Ad ogni modo, la tua descrizione combacia, pertanto ti dico come ho fatto io per quello del mio Presario e spero che ti sia utile. > C'� da dire che durante la compilazione lo script ha chiesto i sorgenti > del kernel che io avevo installato dai paccketti debian in [cut] > abbia tenuto presente questo particolare. Per cui vi chiedo, che cosa > devo fare per avere una compilazione senza alcun warning (che credo sia > il problema)? Se mantieni il kernel precompilato con la relativa extraversion (il -k7), non c'e' molto che puoi fare: lo script di configurazione "impara" la versione del kernel dal versions.h. Una soluzione possibile potrebbe essere questa: modifichi il Makefile dei sorgenti del kernel e imposti EXTRAVERSION = -k7, ricompili il kernel leggendo la configurazione da /boot/config-2.4.18-k7, NON lo installi e compili il driver del modem indicando come directory dei sorgenti quella in cui hai appena ricompilato. Cosi' il versions.h (e anche il modversions.h) dovrebbe riportare le indicazioni corrette. Oppure fai come ho fatto io: ricompili e installi un kernel personalizzato e compili i driver del modem indicando come directory dei sorgenti /lib/modules/<versione>/build, che e' un symlink alla directory giusta. Cosi' funziona di sicuro, testato di persona. Tra l'altro, se il driver cui ti riferisci e' quello del Conexant, lo script di installazione e' fatto benissimo e supporta Debian, nel senso che usa le utility della distro per eseguire il setup. Esempio banale, per aggiungere gli alias a modules.conf non fa un semplice append alla fine del file, ma crea un file in /etc/modutils e invoca update-modules. Quindi puoi eseguire tranquillamente il make install, senza paura di introdurre modifiche non tracciabili al tuo sistema. Io ho provato anche a disinstallare con make uninstall e non rimane la benche' minima traccia. > sembra percorribile. Inoltre non mi � chiaro se ci sia un posto > corretto dove andare a mettere i "driver-del-modem.o" (anzich� > /lib/modules/2.4.18-k7/misc !?), e in generale i driver compilati per > qualunque tipo di periferica. /lib/modules/<versione del kernel> e' il posto giusto per quelli compilati come modulo, quindi vai tranquillo. > Ma un driver di questo tipo (modem), deve essere caricato al boot? Dipende se ti serve subito o no. :-) Io lo carico dinamicamente quando lancio la connessione ad Internet, ma e' questione di gusti. > PS. certo che quando si tratta di RH, Mandrake o SuSe, ci sono gli rpm > di tutti i generi, tutte le architetture, sorgenti, documentazione... Non dimenticare che si tratta di distribuzioni commerciali. RH, poi, e' un caso particolare: da sola, costituisce quasi i tre quarti del fatturato di tutte le aziende Linux centered, e' normale che moltissimi pacchetti siano nativi per essa. Ad ogni modo, pure Debian non scherza, in quanto a ricchezza di software. > per il resto del mondo invece ci sono i tar.gz dei poveri Beh, se non fosse che e' scomodo e su tante macchine diventa quasi masochismo, io trovo che compilare e installarsi il software dai sorgenti sia la cosa piu' divertente (oltre che didattica) del mondo! Senza contare che puoi sempre crearti tu i tuoi pacchetti .deb partendo dai sorgenti originali. > (ma alien funziona bene o crea altra entropia?). L'ho usato proprio per convertire l'rpm dei driver del Conexant (versione RH) a .deb: confesso che ero scettico, ma ha funzionato perfettamente e al primo colpo. Onore e gloria al genio che lo ha inventato, anche se, onestamente, non lo userei su pacchetti molto complessi. Spero di averti aiutato, ciao! :-) -- BlueRaven There are only 10 types of people in this world... those who understand binary, and those who don't.

