Problema applicazioni 3D

7 risposte [Ultimo messaggio]
Ritratto di Xfire
Xfire
(Geek)
Offline
Geek
Iscritto: 24/09/2008
Messaggi: 133

Ho reinstallato openSUSE dopo aver cambiato il reparto archiviazione del PC.
Catalyst 9.8, compiz, kernel aggiornato, tutto va per il meglio.

Stranamente però le applicazioni che fanno uso delle librerie openGL non riescono ad avviarsi, ad esempio:

epsxe (emulatore psx): con il plugin openGL, rende lo schermo nero per un istante e poi il programma si termina.
Eternal Lands idem, i giochi installati in wine stessa cosa, assaultcube, alienarena...tutti questi titoli non vanno, ad eccezione di Nexuiz, Sauerbraten, FoolBillard e Blood Frontier (stesso engine di Sauerbraten).

Data l'anomalia non sono sicuro che dipenda dalle openGL quindi avrei bisogno di uno schemino su come configurare al meglio openSUSE per le applicazioni 3D (pacchetti da installare, file di configurazione...).

Probabilmente quanto ho scritto non basta per comprendere il problema, quindi se servono precisazioni ulteriori faremi sapere.

Grazie, Xfire Wink

Ritratto di AL9000
AL9000
(Guru)
Offline
Guru
Iscritto: 29/10/2005
Messaggi: 1277

scommetto sul fatto che le librerie di opengl non si trovano dove dovrebbero essere.

Nelle recenti versioni di Xorg, i percorsi delle librerie sono cambiati. Così, a volte il file libGL.so non è correttamente caricato, anche se risulta installato.

Pertanto cerca libGL.so* nel tuo sistema e vedi dove stanno.

I percorsi dovrebbero essere:

/usr/lib/libGL.so
/usr/lib/libGL.so.1
/usr/lib/libGL.so.1.2

Se ne trovi altre in altri percorsi, prova a rinominarle in altro modo (tipo libGL.so.old e così via) ed a vedere se le applicazioni che sfruttano opengl funzionano di nuovo.

Se invece non noti nulla di anomalo, allora prova a vedere qual'è l'output di questo comando:

LIBGL_DEBUG=verbose glxinfo > /dev/null

se ti restituisce qualche errore, allora è là che sta l'inghippo.

Ciao

Chi è investito di un'autorità si trasformerà inevitabilmente, secondo una legge sociale immutabile, in un oppressore ed in uno sfruttatore della società. (M.A. Bakunin)

Ritratto di Xfire
Xfire
(Geek)
Offline
Geek
Iscritto: 24/09/2008
Messaggi: 133

Grazie dell'aiuto, ma ho solo due file libGL (32/64bit):
Quote:

paolo@linux-l566:~> whereis libGL.so* libGL: /usr/lib/libGL.so /usr/lib64/libGL.so

Il comando da te suggeritomi restituisce invece questo:
paolo@linux-l566:~> LIBGL_DEBUG=verbose glxinfo > /dev/null
libGL: XF86DRIGetClientDriverName: 8.64.3 fglrx (screen 0)
libGL: OpenDriver: trying /usr/lib/dri/tls/fglrx_dri.so
libGL: OpenDriver: trying /usr/lib/dri/fglrx_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/tls/fglrx_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/fglrx_dri.so
libGL: XF86DRIGetClientDriverName: 8.64.3 fglrx (screen 0)
libGL: OpenDriver: trying /usr/lib/dri/tls/fglrx_dri.so
libGL: OpenDriver: trying /usr/lib/dri/fglrx_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/tls/fglrx_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/fglrx_dri.so
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 5, (OK)
drmOpenByBusid: Searching for BusID PCI:1:0:0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 5, (OK)
drmOpenByBusid: drmOpenMinor returns 5
drmOpenByBusid: drmGetBusid reports PCI:1:0:0

Ritratto di AL9000
AL9000
(Guru)
Offline
Guru
Iscritto: 29/10/2005
Messaggi: 1277

errori non paiono esserci, però..però..però..

Quote:

paolo@linux-l566:~> whereis libGL.so* libGL: /usr/lib/libGL.so /usr/lib64/libGL.so

questo output mi insospettisce: hai un processore a 32 o 64 bit?

come mai quella libreria si trova sia in /usr/lib che in /usr/lib64?

probabilmente non si dovrebbe trovare in tutti e due i percorsi, ma solo nel percorso che identifica l'architettura del tuo processore (/usr/lib per procio a 32 bit, /usr/lib64 per quelli a 64 bit)

Comunque, più che col comando whereis, cerca il termine libGL.so* nell'applicazione grafica "trova file/cartelle", cercando il termine in tutto il sistema.

Oppure, se ti piace la riga di comando, dai questi comandi:

sudo updatedb<br /><br />locate libGL.so

Come dicevo prima, i risultati della ricerca dovrebbero essere solamente i seguenti (od i corrispondenti se hai un procio a 64 bit):

/usr/lib/libGL.so
/usr/lib/libGL.so.1
/usr/lib/libGL.so.1.2

Se trova altri risultati, agisci come ti ho già consigliato e vedi se funzia (magari fai un riavvio).

Ciao

Chi è investito di un'autorità si trasformerà inevitabilmente, secondo una legge sociale immutabile, in un oppressore ed in uno sfruttatore della società. (M.A. Bakunin)

Ritratto di Xfire
Xfire
(Geek)
Offline
Geek
Iscritto: 24/09/2008
Messaggi: 133

Ho un vecchio X6800 (che sto per cambiare) a 4.2GHz.

L'output è questo, rinomino le librerie a 32bit?

/usr/lib64/FGL.renamed.libGL.so.1.2
/usr/lib64/libGL.so
/usr/lib64/libGL.so.1
/usr/lib64/libGL.so.1.2
/usr/lib/FGL.renamed.libGL.so.1.2
/usr/lib/libGL.so
/usr/lib/libGL.so.1
/usr/lib/libGL.so.1.2

Edit:
rinominate le librerie in usr/lib il problema non scompare Sad

Ritratto di AL9000
AL9000
(Guru)
Offline
Guru
Iscritto: 29/10/2005
Messaggi: 1277

Quote:

Ho un vecchio X6800 (che sto per cambiare) a 4.2GHz.

L'output è questo, rinomino le librerie a 32bit?

dovresti rinominare le librerie che non sono per la tua architettura:

se il tuo processore è a 32 bit, devi rinominare le librerie presenti in /usr/lib64;

viceversa, se il tuo processore è a 64 bit, devi rinominare quelle presenti in /usr/lib

Ma comunque, siamo sicuri che il fatto non dipenda dalla mancanza di qualche altra dipendenza richiesta dalle applicazioni che intendi usare?

Tipo, alienarena richiede anche la presenza di altre librerie (ora non ricordo quali)

Prova a vedere se nel tuo sistema manca qualcosa, verificando lo stato delle dipendenze richieste da ciascun pacchetto installato tramite il comando

zypper ve

se l'output del comando ti restituisce qualche dipendenza mancante, allora prova ad installarla.

Ciao

EDIT: ma poi che roba è FGL.renamed.libGL.so.1.2 ?? io non ce l'ho nel mio sistema, e se fosse quella là che da fastidio? prova a toglierla da entrambi i percorsi (non cancellarle, spostale nella tua home, poi magari se non risolve ce la rimetti)

Chi è investito di un'autorità si trasformerà inevitabilmente, secondo una legge sociale immutabile, in un oppressore ed in uno sfruttatore della società. (M.A. Bakunin)

Ritratto di Xfire
Xfire
(Geek)
Offline
Geek
Iscritto: 24/09/2008
Messaggi: 133

Grazie per l'aiuto, ma il problema persiste...non capisco più niente, l'ultima volta che l'ho installato andava tutto, ora... Sad

Assaultcube da questo errore:
/usr/share/games/AssaultCube/bin_unix/native_client: symbol lookup error: /usr/share/games/AssaultCube/bin_unix/native_client: undefined symbol: alcIsExtensionPresent

Alienarena questo:
couldn't exec config.cfg
Console initialized.

------- sound initialization -------
Segmentation fault //non proprio bello eh?

JavaRPG da questo:
jcrpg.sh
/usr/bin/jcrpg.sh: line 36: jogl: command not found

Sembra non centri con le openGL, ma perché anche wine?
Devo reinstallare openSUSE?

Ritratto di Xfire
Xfire
(Geek)
Offline
Geek
Iscritto: 24/09/2008
Messaggi: 133

Errori wine (Oblivion):

err:d3d_caps:WineD3D_CreateFakeGLContext Failed to create a window.
err:d3d:InitAdapters Failed to get a gl context for default adapter
err:d3d:WineDirect3DCreate Direct3D9 is not available without opengl