Allora... facciamo un po'' di chiarezza:
Jackal e
Maiatico: il modulo spca5xx supporta nativamente le vostre due webcam (come maiatico ha avuto modo di vedere), quindi non avete bisogno di patchare nulla. Semplicemente lanciate
Selezionate il modulo spca5xx eccetera eccetera e tutto funziona. Chi ha bisogno della patch è solo chi ha la Quickcam riconosciuta come 092f
Per il bianco e nero, mi spiace ma non so che dirti....
ionontelodico ha scritto:
- Cosa si intende per compilazione di un modulo in teoria?
Qualsiasi programma nasce da un sorgente (o "listato", come si diceva una volta) cioè uno o più file di testo che vengono "tradotti" per creare l''eseguibile.
Questo processo di "traduzione" viene detto
compilazione ed è un processo piuttosto complesso che coinvolge vari programmi e varie librerie mentre il programma "traduttore" è detto
compilatore (non l''avresti mai detto, eh? (rotfl) )
Il modulo (che in windows si chiamerebbe "driver") è esso stesso un programma, quindi per funzionare va compilato. Normalmente i pacchetti .deb contengono già programmi compilati, il che elimina un sacco di grattacapi, ma i moduli sono in stretta relazione con il kernel per cui o vengono installati con il kernel stesso oppure devono essere compilati in relazione al kernel installato che può variare da macchina a macchina.
La soluzione "debian" a questo problema si chiama
module-assistant che automatizza il procedimento, scaricando i sorgenti (il pacchetto .deb che li contiene), compilandoli e installando il modulo.
- Una volta scaricati i sorgenti del driver, per lavorarci su mi dovrò "spostare" sotto la directory /usr/src/modules/spca5xx/ ?
in realtà se funzionasse il comando "patch" non ce ne sarebbe bisogno perchè nella patch ci sono i path assoluti dei file.
Se invece devi patchare "a mano", ovviamente devi aprire i files corrispondenti.
Ma magari stasera provo a fare un .diff funzionante.
- Come si crea il file patch.diff
EDIT:
Lascia perdere: l''ho rifatto io e funziona. Puoi scaricarlo direttamente da
QUI
- [li]Se anche io non dovessi riuscire ad applicare la patch usando
sudo patch -p0 < patch.diff
come riuscirò a capire quali righe incollare e dove nei due files?
Nel file .diff ci sono delle righe come
Codice: Seleziona tutto
diff -Naur drivers/usb/spca5xx.c /usr/src/modules/spca5xx/drivers/usb/spca5xx.c
Che ti dicono che il file da modificare con le modifiche successive è
/usr/src/modules/spca5xx/drivers/usb/spca5xx.c
e delle righe come
Che ti dicono che da quel file devi
togliere (-) 6 righe a partire dalla riga numero 432 e
aggiungere (+) le 7 righe seguenti a partire dalla riga numero 432.
In pratica il tutto si riduce ad aggiungere una riga perchè se noti le altre 6 (3 prima e 3 dopo) sono semplicemente "di riferimento", la riga aggiunta è quella contrassegnata con il "+" (ma il "+" non va aggiunto nel sorgente)
P.S.: puoi spiegarmi anche come sei riuscito ad inserire il link della patch, senza fare apparire l''indirizzo dell''url completo?
Basta mettere il link all''interno del tag {url=http://vattelapesca}pippo{/url} (naturalmente con le parentesi quadre)