**** POSTALINUX ( o qualsiasi altro titolo ) **** Questo mese chiarisco alcuni dubbi sul 3d per Linux. A causa anche del poco spazio probabilmente non sono riuscito ad essere sufficientemente chiaro... le 20 e oltre email, che di solito mi arrivano nei 10 giorni successivi l' uscita in edicola della rivista, questo mese erano quasi tutte incentrate sul 3d. Cominciamo subito! *** Problemi col 3d Ciao Ivan, sono Gabriele di Genova. Ho appena comprato PCAction di Gennaio, attratto dal CD contenente tutte le librerie necessarie a giocare sotto Linux, obiettivo che ho da tempo. Corro alle pagine dedicate alla faccenda e scopro con gioia che non si parla di ricompilazione del kernel. Operazione nella quale non mi sono ancora cimentato (infatti il mio linux non vede: nell'ordine: scheda audio SB16, Scheda SCSI, 3Dfx, iomegaZip, Scanner, Stampante e il bay del PalmPilot...). Poco male, io l'ho installato principalmente per mettere le mani su TheGimp, programma di cui ho letto un gran bene e che, seppur immaturo, mi ha piacevolmente stupito. In alcuni campi da molti punti al più noto (e costoso) Photoshop. Purtroppo poi scade su alcune caratteristiche fondamentali (una per tutte: non supporta il CMYK!!!) e qui si paga lo scotto ad uno sviluppo per forza di cose amatoriale: le parti più divertenti e spettacolari (i filtri e gli script) sono incredibilmente evolute (da notare che molti di questi effetti per Photoshop sono plug-in commerciali da 2/300 mila la dozzina!!!), poi però, visto che non c'è nulla di divertente nello scrivere driver e profili, quando si tratta di sviluppare il supporto per la stampa professionale... Comunque, Gimp a parte, dicevo, da tempo volevo vedere come Linux supporta giochi un po' più complessi di solitari con le carte, MahJongg e Campo Minato. Purtroppo non sono mai riuscito a combinare nulla. Incapace va bene, ma so leggere, conosco l'inglese... ma qui qualcosa non funziona anche perché ottengo sempre degli errori in fase di compilazione (a volte ho in risposta addirittura che il comando "make" è sconosciuto!!!). Mi informo e mi viene detto che forse mi mancano delle librerie (a proposito, esiste un comando per sapere esattamente cosa ho installato?) e da qui al motivo (finalmente) di questa mia il passo è breve. Ho provato ad installare Mesa, GLUT e driver per 3Dfx. A questo punto le specifiche: ho un P166 64Mb con S3Virge e Righteous Orchid (3Dfx Voodoo Graphics 1) con Win95, WinNT e RedHat Linux 6.0 (su hda5, se può servire saperlo...) Dicevo, carico Linux, monto il Ciddì e mi fiondo sul file Mesa-3.1-0.1.i386.rpm ma nisba, gnoRPM (un tool grafico di gestione dei suddetti file) mi comunica che non è consigliabile procedere perché manca libglide2x.so. Allora installo i driver (sia Device3Dfx che libglide) riprovo ma nulla. Rileggo tutto l'articolo per bene e vedo che potrebbe essere il file /etc/ld.so.conf non aggiornato. Lo apro in gnotepad+ e faccio un Query in gnoRPM sui file della 3Dfx per sapere dove sono stati installati ma non ottengo un path (come invece accade per tutti gli altri pacchetti installati). I file sembrano esserci ma non so dove (e presumo in nessuno dei tre percorsi che ci sono specificati in /etc/ld.so.conf). Noto fra i file un 3Dfx.gif che cerco su tutta la partizione ma nisba, non esiste. Hai idea di cosa possa essere successo? E i compilatori che a volte sembrano non esistere ci sono nel sistema o devo installarli (ho pensato che visto che a volte "make" funzionava e a volte no, potrebbe essere stato incluso nei pacchetti insieme ai binari? Mi ricordo ad esempio che Doom, che sembrava installarsi correttamente non partiva. Da shell mi dava un "cannot execute binary file"...) Ciao, Gabriele Ciao Gabriele, decisamente la tua email supera abbondantemente il limite di pubblicabilità Comunque procediamo: Innanzitutto bisogna che mi dici che errori ti dà... mi servono quanti più dati possibile per identificare i problemi, comunque azzardo qualche ipotesi: Il primo pacchetto da installare e' quello della scheda grafica, io ho una voodoo2 su mandrake 6.1 e quindi ed ho installato il Device3Dfx-2.2-3.src.rpm e Glide_V2-2.53- .i386.glibc2.1.1.rpm, tu con la voodoo1 installerai Glide_VG-2.46-3.i386.glibc2.1.1.rpm. Non hanno problemi di dipendenze verso altri pacchetti per il 3d e quindi si devono installare. Dopo si installa Glide2x-SDK-2.1-3.i386.rpm, che contiene gli header per la compilazione e le librerie di base: gli header servono per compilare quei programmi che usano le funzioni 3d.,Infine installa le Mesa, usa l' rpm, Mesa3.1.rpm. Tutte queste librerie finiscono nelle "trusted directories" ossia directory in cui ldconfig guarda senza che siano specificate in ld.so.conf. Se ciò non funziona, e' il caso di installare i pacchetti con rpm -i --force nomepacchetto, lancia ldconfig e poi ldconfig -p | grep Mesa per vedere se le librerie sono state registrate, ricorda la maiuscola! . Ricorda inoltre che gli rpm in genere eseguono ldconfig in automatico, mentre se installi dai tar.gz devi farlo da solo! E non ti aspettare, se installi le librerie da tar.gz, che rpm ti aiuti in futuro.. rpm non cerca le librerie sul sistema ma sul suo database personale, quindi se un pacchetto ti chiede un certo file che sei sicuro di avere, puoi tranquillamente usare l'opzione --nodeps per forzare l'installazione. Al limite dopo esegui rpm --rebuilddb per costringere rpm a controllare e sistemare il proprio database. Altri problemi: la 3dfx la vede solo root, per renderla disponibile agli utenti devi installare il Device3Dfx, e caricare il modulo 3dfx.o all'avvio, inserendo in /etc/conf.modules la riga alias char-maior-107 3dfx e caricando a mano, solo la prima volta poi è automatico, il modulo 3dfx con insmod 3dfx ( poi al riavvio successivo verifica che sia al suo posto con lsmod ) Per la scheda audio se usi il kernel di default una soundblaster dovresti vederla per forza: da root lancia setup e vai in sound card configuration, e segui le istruzioni.... al 99% basta premere invio 5-6 volte ed il tool fa tutto da solo. La stampante invece va configurata a mano: la porta parallela va preparata inserendo in /etc/conf.modules le seguenti righe alias parport_lolevel parport_pc options parport_pc io=0x378,0x3bc,0x278 irq=7,auto,none ( dovrebbe bastare io=0x378 irq=7 ) options lp parport=0,2 e poi riavvia oppure carica a mano i moduli per la parallela ( insmod parport_probe , insmod parport_pc , insmod parport , insmod lp ) . Se non hai i moduli preparati a ricompilare , ma i kernel di default dovrebbero avere tutto. Lo ZIP va configurato come ..d4 cioè se l'hai come slave sul secondo canale ide sarà /dev/hdd4 , il perché è spiegato meglio sulla posta del numero di gennaio. Per i compilatori che paiono non esserci... a volte gli script cercano alcune cose nel posto sbagliato, tutto qui! Basta leggersi un po' l'inizio dello script per vedere cosa vuole e correggerlo di conseguenza: i problemi variano caso per caso, a volte basta fare un link simbolico ad un programma o ad una directory di file di include, o modificare qualche path nello script Ed infine, per sapere cosa hai e cosa non hai, prova con which nomecomando, funziona solo con gli eseguibili che si trovano nel path corrente, ed ogni tanto aggiorna il database dei file con updatedb , che consulterai con "locate nomefile", ed il database delle pagine di aiuto con makewhatis, accessibile con "apropos qualsiasicosa" **** Xfree e Window Manager Ciao Ivan sono Valentino =) (Non mi conosci ovviamente...) Avrei due domanda e una richiesta: La prima domanda è: Come si fa ad aggiornare Xfree86???? Io mi sono scaricato i sorgenti, li ho compilati seguendo tutta la procedura ma al momento della configurazione con XF86Setup, quando immetto il layout della tastiera mi da errore e lo schermo di X fa casino per 10 secondi per poi tornare vuoto (con la griglia grigia). Ho provato a evitare di cambiare il layout ma dopo che faccio partire l'X-server configurato mi fa lo stesso scherzo di prima, ma stavolta va a 640x480 e mi dice che il test è riuscito, riuscito un cavolo!!!! Ti ho impostato 1280x768 a 24 bpp e tu mi metti 640x480 a 16bpp!! Come si fa!! Che problema è??. Ho lo stesso problema installando la Sla(c?)kware 7 che ha già l' XFree86 3.3.5 ma il problema è sempre lo stesso!. Non esiste un file rpm per aggiornare l'XFree alla versione 3.3.5????? l'ho cercato dappertutto ma non l'ho trovato. Ti prego aiutami. Ah dimenticavo che la mia scheda video è una G400 32Mb, supportata sia dall'XFree86 3.3.4 che dal 3.3.5, la mia distro è la SuSE 6.2 Kernel 2.2.13. La seconda domanda è: esiste un modo per usare la GNOME classica (quella della RedHat per intenderci )? Con la SuSE ho provato vari modi: creare un file eseguibile nominato .Xclients con dentro #!/bin/bash gnome-session ## ma non funge, e ho provato anche modificando le ultime righe di .xinitrc da exec $WINDOWMANAGER a exec $panel & nel secondo caso all'avvio del server X digito "gnome-session" ma parte Enlightement che non mi piace proprio. Installerei la Slack, visto che in quella questo aspetto è più curato e visto che è più aggiornata (Poi visto che è presa da una rivista aggiungerei gli rpm dei pgm presenti nei CD della SuSE, secondo te ci riesco?), ma mi da quel problema con l'XFree. La richiesta è: se non riesci a rispondermi a tutto in mail potresti mettere le risposte nella rivista? Ciao e grazie PS: Fai mettere più software per linux nella rivista =))))) Lettera Firmata Ciao Valentino, XFreee non e' una delle cose più facili da compilare, per una compilazione ottimale dovrei essere li sul tuo computer per studiarmi l'hardware ed il makefile, è impossibile dirti a distanza cosa fare; piuttosto che fare una compilazione approssimativa, una volta tanto consiglio gli eseguibili precompilati per RH/Mandrake 6.x , che trovi sul cd del numero di gennaio. XFree86 e' diviso in una quarantina di pacchetti: configurazione, font, documentazione, e vari server per ogni scheda/gruppo di schede... cerca XFree-XF86Setup-3.3.5.rpm e XFree-XF86_SVGA per la tua scheda, dovrebbero bastare. Se usi suse cerca i pacchetti fatti apposta per suse sul loro sito, perché sono differenti dai pacchetti per RH, in quanto installano gli eseguibili in posti diversi. Infine prova ad editare manualmente il file XF86Config, per settare i giusti parametri: nella sezione "section screen" metti defaultcolordepth 16 ( o 24 o 32 ) e nella subsection relativa alla profondità di colore che hai scelto scrivi "1024x768" "800x600" e "640x480", la prima che hai scritto è quella di default, le altre le ottieni in sequenza premendo CTRL+ALT+KEYPAD_PLUS; ulteriori info sul numero di 83 di pcaction ( novembre 99 ) Seconda domanda: la suse, almeno la 6.2 che ho provato io, ha anche gnome, ed il procedimento che hai seguito e' giusto, se hai installato gnome basta che fai un file .xinitrc nella tua HOME con dentro gnome-session, ma mi sembra che lo yast possa configurare anche questo... sempre per la questione dei pacchetti ( rh installa tutto in /usr/bin/, mentre la suse, più ordinata, mette i vari WM e tante altre cose in /opt/ ) molto probabilmente lo gnome RH non funzionerà sotto suse ( a meno di modificare alcune variabili di ambiente, immagino, ma non ho mai provato ). Per il Window Manager, se non ti piace Enlightment, su Gnome, nel pannello di controllo. c'e' la possibilità di scegliere tra WindowMaker twm ed altri WM che hai installato: cerca nel Gnome control center, sezione dektop/window manager, e imposta quello che preferisci *** X in multisessione Ciao Ivan! Intanto fai i miei complimenti a tutta le redazione! Siete grandi! Vorrei sapere se è possibile lanciare il server X su più console contemporaneamente. Nel tuo articolo di novembre dicevi che il server può essere usato da altri computer, quindi visto che tutte le console sono separate, potrei fare finta che siano computer diversi e lanciare tanti server X... o sbaglio? Forse sbaglio perché non ci sono riuscito! Si può fare? E come??!!? Per fare certe cose mi server il potere di root heheeh ma non posso sempre chiudere X da lla mia console e rilanciarlo in quella di root, e lanciando un programma grafico in una shell dopo aver fatto "su -" mi dice che non può aprire il display! Come faccio?!?!? Graaazieee!! Lettera Firmata E' vero nell'articolo questo non l'ho spiegato, ma si parlava di configurazione di server non di usa di client... scriverò qualcosa anche in tal senso. Per quel che riguarda il tuo problema, senza impazzire troppo, è sufficiente che che al prompt della shell scrivi "startx -- :numero_della_console" . Se hai 6 console su cui attende il prompt del login, il primo server X che avvii ti connetterà sulla settima ( tasto F7 insomma ). Il secondo server che avvii, mettiamo dalla console 4 ( tasto F4 ) col comando "startx -- :4" si connetterà sulla console libera immediatamente successiva, la 8 ( tasto F8 ). Potrà sembrarti di avere delle difficoltà passando da un server all'altro: quando premi CTRL-ALT-Fx per girare tra le console, ripremi sempre tutti e tre i tasti, non solo quello di funzione, altrimenti l' X corrente interpreterà solo la pressione del tasto funzione, perdendo quella di CTRL-ALT, e non agirà nel modo richiesto