Page 1 of 2 12 LastLast
Results 1 to 10 of 12

Thread: Compilare CUDA2.3 dopo upgrade a kernel 2.6.30.7

  1. #1
    Junior Member Nirvana1289's Avatar
    Join Date
    Oct 2009
    Posts
    57

    Question Compilare CUDA2.3 dopo upgrade a kernel 2.6.30.7

    Ciao a tutti,

    mi dispiace aprire un nuovo post, ma non ho trovato alcuna risposta al mio problema.

    Spiego passaggio per passaggio che cosa ho combinato.

    Stasera mi è venuta la malsana idea di passare ai driver cuda2.3, notando come alla fine della fiera, quelli nei repo non (nvidia-driver) ne volessero sapere di funzionare.

    1) disinstallati completamente tutti i pacchetti che avessero in qualche modo a che fare con nvidia
    2) provato ad installare i pacchetti nvidia-drivers, ma dopo alcuni problemi con il file di configurazione (anche lo script di configurazione automatica non ne vuole sapere di funzionare) ho rinunciato per una compilazione diretta deidriver CUDA 2.3 rilasciati direttamente dalla nvidia.
    3) dopo aver scaricato i driver, fuori da X, ho fatto partire lo script ma ottengo un messaggio di errore che posto:

    [[[[[[[[[[[[[[[[[[[[[[CUT]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
    ERROR: Unable to load the kernel module 'nvidia.ko'. This happens most
    frequently when this kernel module was built against the wrong or
    improperly configured kernel sources, with a version of gcc that differs
    from the one used to build the target kernel, or if a driver such as
    rivafb/nvidiafb is present and prevents the NVIDIA kernel module from
    obtaining ownership of the NVIDIA graphics device(s), or NVIDIA GPU
    installed in this system is not supported by this NVIDIA Linux graphics
    driver release.

    Please see the log entries 'Kernel module load error' and 'Kernel
    messages' at the end of the file '/var/log/nvidia-installer.log' for
    more information.
    -> Kernel module load error: insmod: error inserting './usr/src/nv/nvidia.ko':
    -1 Invalid module format
    -> Kernel messages:
    [[[[[[[[[[[[[[[[[[[[[[CUT]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
    nvidia: version magic '2.6.29.4 SMP mod_unload 686 ' should be '2.6.30.7 SMP
    mod_unload 686 '
    nvidia: version magic '2.6.29.4 SMP mod_unload 686 ' should be '2.6.30.7 SMP
    mod_unload 686 '
    [[[[[[[[[[[[[[[[[[[[[[CUT]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
    ERROR: Installation has failed. Please see the file
    '/var/log/nvidia-installer.log' for details. You may find suggestions
    on fixing installation problems in the README available on the Linux
    driver download page
    [[[[[[[[[[[[[[[[[[[[[[CUT]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
    in grassetto ho messo le parti che mi sembravano fondamentali (la quota è un estratto del log di installazione genrato dal pacchetto Cuda).



    ora, mi sembra proponibile il fatto che la versione del mio kernel è passata dal 2.6.29.4 alla 2.6.30.7 prima della compilazione del pacchetto cuda, e a quanto pare questo sembra dare fastidio al "caro" pacchetto di installazione. (che strozzerei volentieri...)
    ma il pacchetto nvidia.ko?? da dove mi spunta fuori? non ho idea di come muovermi soprattutto xk stiamo parlando di uno script, non di un sorgente che posso compilare come diavolo mi pare e forzando se necessario tutti i pacchetti che voglio....
    qualche idea su come posso risolvere??

    Nirvana1289@An7h3ma#
    Ora che ho perso la vista, ci vedo di più.

  2. #2
    Junior Member Nirvana1289's Avatar
    Join Date
    Oct 2009
    Posts
    57

    Exclamation

    ok... forse ho trovato una soluzione:

    Code:
    cuda2.3-blablabla -k $( uname -r )
    domani vi faccio sapere se funziona!!!



    nirvana1289@nirvana1289#
    Ora che ho perso la vista, ci vedo di più.

  3. #3
    Junior Member Nirvana1289's Avatar
    Join Date
    Oct 2009
    Posts
    57

    Default

    Rieccomi!!

    sono riuscito ad installare il pacchetto cuda.run mediante un flag e una var

    Code:
    sudo sh ./cudadriver2.3_linux_32bit_rhl4.run -k $( uname -r )
    Ora il problema è quando provo a far ripartire un serverX:

    VEDI SOPRA
    Ora che ho perso la vista, ci vedo di più.

  4. #4
    Senior Member
    Join Date
    Jan 2009
    Posts
    114

    Default

    bt4prefinal + kernel 2.6.30.5 dal repo e i driver nvidia cuda 2_3 si compilano lisci lisci senza problemi.
    il kernel 2.6.30.7 da dove l hai preso?
    acer 5920g , 345abg , nvidia 8600m
    bt5 kde 64bit + acpi + cuda 4.0 / nvidia 270.40 / pyrit

  5. #5
    Junior Member Nirvana1289's Avatar
    Join Date
    Oct 2009
    Posts
    57

    Default

    il kernel 2.6.30.7 da dove l hai preso?
    Il 2.6.30.7 dai repo se non ricordo male...
    Purtroppo non posso postare link, sono ancora un pischello del forum

    http ://forums.remote-exploit.org/backtrack-4-general-support/26321-2-6-30-5-virtualization .html vai alla #6

    Quando ho seguito il consiglio di questo post, mi sono ritrovato con il .7 al posto del .5. Avevo seguito questo post proprio perchè servivano i driver r8187 anche a me

    --------------------------------

    Andando avanti con il mio problema, purtroppo la quantità di ricerche che posso fare sono poche, perchè mi posso connettere solo dall'università , quindi posso fare delle valutazioni passo passo...

    Intanto posto il messaggio di errore del mio xserver e del mio xinit dopo un tentativo di startx:

    FATAL : Error inserting nvidia ( /lib/modules/2.6.30.7/kernel
    /driver/video/nvidia.ko): invalid module format

    (EE) NVIDIA : Failed to load the NVIDIA kernel module please check your
    (EE) NVIDIA : system's kernel log for additional error messages.
    (EE) NVIDIA : Failed to load module "nvidia" ( module-specific error, 0 )
    (EE) No drivers avaiable
    FATAL SERVER ERROR
    No screens found.
    Giving up.
    ora xinit:

    xinit : Connection refused (errno 111): unable to connect to xserver
    xinit : No such process (errno 3) : server error
    Perfetto questo ultimo messaggio lo spieghiamo subito (metto tutti i passaggi per chi si troverà nei miei panni): semplicemento X funziona come server e client: quando digiti startx, avii prima un server e poi un client (xinit). Ora se non parte il server è normale che il client non riesca a connettersi

    Per quanto riguarda Xserver, sono andato a controllare nei messaggi dei kernel:
    Code:
    dmesg
    indovina un pò, mi ritrovo col messaggio che ho quotato nel primo reply!

    Linux version 2.6.30.7 (root@irukanji) (gcc version 4.3.2 (Ubuntu 4.3.2-1ubuntu12) ) #1 SMP Fri Sep 18 15:36:50 PDT 2009
    [[[[[[[[[[[[[[[[[[[[[[[[[CUT]]]]]]]]]]]]]]]]]]]]]
    nvidia: version magic '2.6.29.4 SMP mod_unload 686 ' should be '2.6.30.7 SMP mod_unload 686 '
    nvidia: version magic '2.6.29.4 SMP mod_unload 686 ' should be '2.6.30.7 SMP mod_unload 686 '
    nvidia: version magic '2.6.29.4 SMP mod_unload 686 ' should be '2.6.30.7 SMP mod_unload 686 '
    nvidia: version magic '2.6.29.4 SMP mod_unload 686 ' should be '2.6.30.7 SMP mod_unload 686 '
    nvidia: version magic '2.6.29.4 SMP mod_unload 686 ' should be '2.6.30.7 SMP mod_unload 686 '
    nvidia: version magic '2.6.29.4 SMP mod_unload 686 ' should be '2.6.30.7 SMP mod_unload 686 '
    nvidia: version magic '2.6.29.4 SMP mod_unload 686 ' should be '2.6.30.7 SMP mod_unload 686 '
    che kernel ripetitivo...
    Ora che ho perso la vista, ci vedo di più.

  6. #6
    Moderator
    Join Date
    Aug 2007
    Posts
    1,053

    Default

    cortesemente ri/leggiti il regolamento prima di scrivere altri post, no doppi post entro un giorno, in caso modificate i precedenti - grazie.

  7. #7
    Junior Member Nirvana1289's Avatar
    Join Date
    Oct 2009
    Posts
    57

    Default

    Scusa, problemi con l'anti spam... il primo post non era stato pubblicato all'inizio, è stato aggiunto in seguito, dopo il controllo, quando ormai l'avevo già riscritto. Aspettavo che uscisse per modificarlo. Comunque visto che sei il più attivo, brigante, sai qualcosa di un kernel 2.6.30.7? fa parte dei repo di BT o per qualche strana congiunzione astrale mi sono ritrovato con un kernel che non c'entra nulla??

    ----------------------------------------

    Andando avanti con il mio problema: la storia del kernel mi ha messo una pulce nell'orecchio ed effettivamente non ho trovato nessuno nel forum internazionale che parla del kernel .7, inizia a venirmi il dubbio che dai repo abbia scaricato un kernel sbagliato... comunque strano perchè ho seguito quella serie di comandi del link che ho postato, modificandoli solo mettendo al posto del .5 il .7, poichè mi ero accorto che la subvers era diversa. Pensavo fosse figlia di un aggiornamento invece mi sta facendo venire solo un sacco di dubbi...

    Comunque ho provato a fare una completa ricompilazione manuale del kernel 2.6.30.5, ma il pezzente di un make non mi ha generato il file initrd... insomma trovo un problema e ne creo altri 50 sono grandioso

    L'idea di fondo era quella di ricompilare anche nvidia.ko, ma non è ancora andata bene... insomma ci devo lavorare un po', ma sto quasi pensando di fare un bel reinstall post format...
    Ora che ho perso la vista, ci vedo di più.

  8. #8
    Moderator
    Join Date
    Aug 2007
    Posts
    1,053

    Default

    anche l' antispam è descritto nel regolamento

    detto questo, i kernel vengono aggiunti ogni volta che è poossibile farlo, sta all' utente vedere se è meglio prenbderlo dai repository oppure aspettare che venga inserito all' interno di un upgrade.

    La mia risposta alla compilazione dei drivers NVidia per i supporto a cuda è sempre la stessa:

    ci sono dei problemi ad interfaciare i moduli nvidia del kernel con i drivers attualmente in uso e da backtrack-nvidia, e da nvidia-sito. Quindi per il supporto di Cuda dovete portare paziena ed aspettare che esca la 4.final.

    Ovviamente non dico che è impossibile, c'é anche una certa quantità di persone che può avere del tempo per dedicarscisi.

    Ma sinceramente leggendo gli errori non si fà molto installando un nuovo kernel.

    soluzione?

    scaricati l' ultimo kernel disponibile tipo vanilla, lo metti in backtrack e lo butti sù alla debian-way, durante la compilazione disabilita tutti i moduli delle schede video che trovi. poi passi a fare tutto fuori di backtrack, nel senso non con gli strumenti forniti dalla distro.

    non è semplice però, una volta fatto questo la tua backtrack non potrà più essere aggiornata quindi pensaci bene.

    per l' ennesima volta: io aspetterei la 4.final.

  9. #9
    Junior Member Nirvana1289's Avatar
    Join Date
    Oct 2009
    Posts
    57

    Default

    grazie brigante,

    si sapevo dell'antispam, ma quando avevo rifatto il post con gli errori nello specifico non potevo vedere quello che avevo fatto prima... quindi non potevo modificarlo.

    cmq, rinnovo scuse e non torno più sull'argomento. Per quanto riguarda il mio problema:

    Ma sinceramente leggendo gli errori non si fà molto installando un nuovo kernel.
    ho ricompilato da zero a mano il kernel, tutto, non solo headers, ma anche moduli eccetera, per utilizzare lo stesso compilatore che è stato utilizzato per compilare il nuovo driver CUDA, ma di moduli nvidia.ko non c'è traccia dallo stout... gli unici moduli che riguardano nvidia sono:

    LD drivers/video/nvidia/built-in.o
    CC [M] drivers/video/nvidia/nvidia.o
    CC [M] drivers/video/nvidia/nv_hw.o
    CC [M] drivers/video/nvidia/nv_setup.o
    CC [M] drivers/video/nvidia/nv_accel.o
    CC [M] drivers/video/nvidia/nv_i2c.o
    CC [M] drivers/video/nvidia/nv_backlight.o
    LD [M] drivers/video/nvidia/nvidiafb.o
    CC drivers/char/agp/nvidia-agp.mod.o
    LD [M] drivers/char/agp/nvidia-agp.ko
    CC drivers/video/backlight/mbp_nvidia_bl.mod.o
    LD [M] drivers/video/backlight/mbp_nvidia_bl.ko
    CC drivers/video/nvidia/nvidiafb.mod.o
    LD [M] drivers/video/nvidia/nvidiafb.ko
    CC [M] drivers/char/agp/nvidia-agp.o
    [M] drivers/video/backlight/mbp_nvidia_bl.o
    non so voi ma io non vedo assolutamente nvidia.ko... e nessuno spiega da nessuna parte che modulo sia.... bel mistero. Infatti ottengo come errore dal serverX un file non esistente... quindi sto cavolo di modulo... da dove arriva?? (che danno aver perso 2 ore di recompilazione per nulla!!!!!!)

    scaricati l' ultimo kernel disponibile tipo vanilla
    umh kernel vanilla... mi hai appena dato una info che un po' mi spiazza... quale è il kernel tipo vanilla?? search:

    Nell'ambito dello sviluppo del kernel Linux, il kernel vanilla è il kernel ufficialmente rilasciato da Linus Torvalds e dai progettisti Linux, senza alcuna patch aggiuntiva.

    I sorgenti del kernel sono liberamente disponibili per il download da http:/ /kernel.org, dove è possibile scaricare la versione stabile (testata e ufficialmente supportata), le release candidate e le beta (versioni ancora sperimentali e dedicate perlopiù agli sviluppatori) e le patch che consentono l'aggiornamento dei sorgenti da una versione all'altra del kernel.

    Le distribuzioni Linux hanno facoltà di adottare un kernel vanilla, o di apportarvi delle modifiche, solitamente allo scopo di aggiugnere funzionalità, o il supporto per determinato hardware. L'unica distro Linux ancora basata su un kernel vanilla con pochissime modifiche è la Slackware. La maggior parte delle altre distro usano un kernel Linux generalmente patchato in base alle esigenze della distro stessa.

    [wiki]
    che senso ha quindi la soluzione che mi hai consigliato? potrei fare tutto con i driver cuda e non avrei più la distro nella quale mi serve una scheda con i driver cuda... mi spiazzi un attimo, spiegati meglio...

    --------------------------------------------------------------------
    Per chi fosse interessato: visto che ho semple esplicitato tutti i passaggi che ho compiuto in questa battaglia (ormai mi tocca chiamarla così ) contro i driver nvidia:

    ATTENZIONE------------------------
    Questa è solo una soluzione da me adottata e non ho la pretesa
    che sia considerata corretta. Sono aperto ad ogni modifica da chi sicuramente ne sa più di me (so di non sapere) per migliorare questa procedura. Anche io come tutti cerco solo di imparare e condividere il sapere

    ------------------------------------

    Ricompilazione di un kernel (da root):

    la procedura non è eccessivamente complessa, ma lunga e noiosa:

    In primo luogo è necessario reperire i sorgenti del kernel se non sono in locale:
    teoricamente in bt sono tutti già presenti (come in tutte le distro debian), ma un controllino prima non sarebbe male:
    (1)
    Code:
    # cd /usr/src/
    In questa cartella dovrebbero esserci i sorgenti del kernel. da quello che ho visto, e sinceramente non sono sicuro sia una cosa standard debian, la cartella /usr/src/linux contiene il kernel nativo presente nella iso della distro. Gli altri kernel sono presenti in una cartella in cui è esplicitato la versione del kernel e la architettura.

    Se abbiamo i sorgenti passiamo in

    Code:
    # cd /lib/modules/2.x.x/
    dove 2.x.x è la cartella del nostro kernel. Se non siamo sicuri della nostra versione possiamo ottenerla con il comando

    Code:
    uname -r
    Ora la cartella 2.x.x deve essere rinominata, affinchè siano installati i nuovi moduli con la nuova compilazione:
    (2)
    Code:
    # mv /lib/modules/2.x.x /lib/modules/2.x.x.old
    A questo punto torniamo nella cartella con i sorgenti (quella che abbiamo individuato al primo passaggio) ed eliminiamo tutti i vecchi collegamenti alle vecchie dipendenze, mediante il comando:

    Code:
    # make mrproper
    Ora avviamo un menu di configurazione a nostra scelta (ce ne sono tre principali):
    - config
    - menuconfig
    - xconfig
    ognuno di questi ha i suoi vantaggi/svantaggi, facciamone una piccola descrizione:

    xconfig
    Comando per avviarlo:
    Code:
    # make xconfig
    Descrizione:
    xconfig esegue la configurazione nell'ambiente X. Per la sua esecuzione necessita dell'installazione di Tcl/Tk, dell'ambiente X correttamente configurato e del supporto del mouse. E' carino, raccomandabile per tutte le tue ricompilazioni e veloce [nel mio caso inutilizzabile ]

    menuconfig
    Comando per avviarlo:
    Code:
    # make menuconfig
    Descrizione:
    menuconfig è veloce, basato su un'interfaccia a caratteri è come la controparte xconfig, semplicemente senza l’intefaccia X. Il meglio per coloro che NON sono interessati ad X o, comunque, un altro modo per provare la configurazione. Personalmente lo considero il migliore.
    In breve: l'aspetto e' quello di un insieme di voci principali (menu) che porta alle opzioni contenute in quella categoria. Ci si muove con i tasti freccia, si selezionano le opzioni che si desiderano tenendo presente che alla sinistra della relativa opzione si può selezionare una M oppure un * (un asterisco).

    M = modulo (ovvero questa opzione non la ritengo fondamentale. Deciderò di caricarla o meno ad ogni sessione.
    Es: Scheda Audio)
    * = includilo STABILMENTE nel Kernel (è fondamentale per linux e/o per me. Il classico esempio è il FileSystem Ext2 che DEVE, di norma, gestire le partizioni linux)

    config
    Comando per avviarlo:
    Code:
    # make config
    Descrizione:
    Questo è il metodo di configurazione più scarno.
    Semplicemente bisogna rispondere ad una serie di domande per ricompilare il kernel. Fai attenzione, se dimentichi qualcosa devi ripartire da capo. E' difficoltoso se comparato agli altri tool sopra menzionati adatti allo stesso scopo.

    Dobbiamo scegliere uno di questi sistemi di configurazione, non tutti

    Nella configurazione personalmente ho eliminato quasi tutti i moduli grafici, cecando di lasciare solo quelli nvidia, nella speranza che fosse ricompilato anche il mio amato nvidia.ko, ma senza speranza. Se si sta ricompilando da un sorgente di bt, si può lasciare già configurato così com'è, poichè è già presente un file di config impostato dai manteiners...

    (3)
    passiamo alla ricompilazione del kernel (io di solito faccio tutto in un passaggio, ma ognuno sceglie di fare come vuole):

    Code:
    # make clean dep bzImage modules modules_install > /root/LogInstallazione.log
    I vari passaggi:
    Make clean -> libera spazio su disco
    Make dep -> compila le dipendenze
    Make bzImage -> genera l'immagine del kernel
    Make modules module_install -> compila i moduli e li installa
    > /root/Loginstallazione.log -> genera un log. è sempre bene averne uno nel caso qualcosa vada storto...

    A questo punto ci dovremmo ritrovare l'immagine del nuovo kernel nella directory /usr/src/linux/arch/i386/boot sotto il nome di bzImage. Copiamo l'immagine nella directory /boot e rinominiamolo per esempio in vmlinuz-new.

    Code:
    # cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-new
    Copiamo anche il file /usr/src/linux/System.map nella directory /boot

    Code:
    # cp /usr/src/linux/System.map /boot
    (finiamo)
    A questo punto non ci resta che editare la configurazione di grub. Per questo seguite una delle moltissime guide presenti nel web per sapere come editare il vostro menu.lst:

    Code:
    # nano /boot/grub/menu.lst
    Questa è la procedura classica. Le difficoltà stanno tutte nel capire quali siano i moduli da dover installare e quali no per ottenere un sistema snello con il minor numero possibile di driver "inutili"... non è semplicissimo, ma neanche impossibile...

    Nirvana1289@nirvana1289#
    Ora che ho perso la vista, ci vedo di più.

  10. #10
    Moderator
    Join Date
    Aug 2007
    Posts
    1,053

    Default

    allora, ti spiego...

    ..torno a ripetere che:

    al momento ci sono problemi con lo sviluppo dei drivers nvidia in backtrack, quindi i drivers e pacchetti, backtrack-nvidia non possono risolvere il problema di chi oggi vuole avere a disposizione il supporto a cuda.

    quello che io ho fatto è solo consigliarti, se proprio vuoi il supporto cuda per te , di prendere una via alternativa, tutta manuale, ma che con backtrack poi non ha più nulla a che fare, ricompilarti il kernel, vanilla o no non ha importanza, e fare tutto a mano, compresa la compilazione di drivers nvidia , (che nel kernel in questo caso devono essere tutti disdabilitati altrimenti vai a creare dei conflitti e ti tocca ricompilare il kernel di nuovo per disabilitarli), e soltanto poi passare alla compilazione del tk cuda...

    se proprio vuoi dai uno sguardo qui

    P.S.:
    ti ricordo che:
    ...con backtrack poi non ha più nulla a che fare!

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •