swrast_dri.so is broken in Ubuntu 14.04

Asked by Nikos Balkanas on 2014-12-17

I have Ubuntu 14.04 64x. I need to use libGL for a project. LibGL uses (dlopen) swrast_dri.so. Both of these are maintained by Ubuntu as specified in the package repository. When i try to run glxinfo I get:

name of display: :0
libGL: screen 0 does not appear to be DRI3 capable
libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/lib/fglrx/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/fglrx/dri/swrast_dri.so
libGL: driver does not expose __driDriverGetExtensions_swrast(): /usr/lib/fglrx/dri/swrast_dri.so: undefined symbol: __driDriverGetExtensions_swrast
libGL: Can't open configuration file /home/nikos/.drirc: No such file or directory.
libGL: Can't open configuration file /home/nikos/.drirc: No such file or directory.
libGL error: failed to load driver: swrast

This is with mesa 10.1.3. Unresolved symbols in swrast seem to go back to mesa 10.1.1. Are there any updates/patches for 14.04? Failing that, where can i dind a version that doesn't have these problems and where can I download its sources?

TIA,
Nikos

Question information

Language:
English Edit question
Status:
Open
For:
Ubuntu xorg-lts-transitional Edit question
Assignee:
No assignee Edit question
Last query:
2015-12-22
Last reply:
2014-12-17

This question was reopened

I suggest you report a bug

Nikos Balkanas (nbalkanas) said : #2

I just did.
Is there anything else i can do for now? I believe that mesa for Ubuntu 14.10 is OK. Where can I find the sources for it?

Nikos Balkanas (nbalkanas) said : #3

OK. I got the sources for ubuntu mesa 10.3.0 from ubuntu archives (mesa for utopic. Here goes nothing;-)

Manfred Hampl (m-hampl) said : #4

The Ubuntu-provided version of swrast_dri.so should be /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so or /usr/lib/i386-linux-gnu/dri/swrast_dri.so (from the libgl1-mesa-dri package) and not in the ...fglrx... directory

Maybe you have to use the Ubuntu-standard libGL, and not the one from the AMD Radeon fglrx package?

What is the output of

dpkg -l | grep libgl1-mesa
dpkg -l | grep fglrx
sudo updatedb
locate swrast_dri.so

Nikos Balkanas (nbalkanas) said : #5

Ty for follow-up. Indeed I use Ubuntu x64, so the swrast_dri.so is under /usr/lib/x86_64.../dri. The error i reported comes from the Ubuntu libGL, not the fglrx one, that I had moved at the time. swrast_dri.so is broken with either the fglrx or the Ubuntu libGL. There is no swrast_dri.so under fglrx. That is just my link to the Ubuntu swrast_dri.so.

Tardis:~/work/mesa-> dpkg -l | grep libgl1-mesa
ii libgl1-mesa-dev 10.1.3-0ubuntu0.2 amd64 free implementation of the OpenGL API -- GLX development files
ii libgl1-mesa-dri:amd64 10.1.3-0ubuntu0.2 amd64 free implementation of the OpenGL API -- DRI modules
ii libgl1-mesa-glx:amd64 10.1.3-0ubuntu0.2 amd64 free implementation of the OpenGL API -- GLX runtime

Tardis:~/work/mesa-> dpkg -l | grep fglrx
ii fglrx 2:14.501-0ubuntu1 amd64 Video driver for the AMD graphics accelerators
ii fglrx-amdcccle 2:14.501-0ubuntu1 amd64 Catalyst Control Center for the AMD graphics accelerators
ii fglrx-core 2:14.501-0ubuntu1 amd64 Minimal video driver for the AMD graphics accelerators

Tardis:~/work/mesa-> locate swrast_dri.so
/usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
Tardis:~/work/mesa-> sudo updatedb
Tardis:~/work/mesa-> locate swrast_dri.so
/usr/lib/fglrx/dri/swrast_dri.so
/usr/lib/x86_64-linux-gnu/dri/swrast_dri.so

Trying to compile mesa from sources is tough. The updated one, 10.3.0 has dependencies from 14.10. Downgrading, I may no longer find packages or sources for mesa 10.0.1, that I know works :-(

Manfred Hampl (m-hampl) said : #6

What is the output of

locate libGL.so

I suspect that there are different versions of libGL and swrast_dri on your system that do not fit together.
See also Bug #1098345

Nikos Balkanas (nbalkanas) said : #7

I need some more help with this. I don't know the bug timetable, but I need this very soon. Itried the archives.ubuntu.com to get sources. Unfortnately i cannot get a listing of the contents, it is disabled. I need to get the 10.0.1 mesa sources. Distribution can give me either 10.3.0 (Ubuntu 14.10) or 9.2.1 (Ubuntu saucy). Both of them have significant dependencies, which would require upgrading or downgrading my system a distro. This applies to the sources as well :-(

Do you know where can i find mesa_10.0.0 (or better 10.0.1) sources, or how to get directory listing in the archives.ubuntu.com?

Nikos Balkanas (nbalkanas) said : #8

Actually I found out the archive of mesa library. It is maintained by sourceforge, not ubuntu as I thought. Hopefully, It will work this time;-)

Nikos Balkanas (nbalkanas) said : #9

Plz read again my response #5. This is a known swrast_dri.so bug.

Manfred Hampl (m-hampl) said : #10

What is the output of

locate swrast_dri.so | xargs ls -l
locate libGL.so | xargs ls -l

Mesa 10.0.1 packages for trusty are available here
https://launchpad.net/ubuntu/+source/mesa/10.0.1-1ubuntu2

If you need further help, you should re-open this question. Currently it is still in the status 'solved'.

Nikos Balkanas (nbalkanas) said : #11

Oh. Good to know that launchpad archives sources. Just downloaded mesa_10.0.5, from sourceforge and was compiling it, but I think I prefer the ubuntu version. However, it now works!

Tardis:~/work/mesa-> glxinfo
name of display: :0
libGL: screen 0 does not appear to be DRI3 capable
libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/lib/fglrx/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/fglrx/dri/swrast_dri.so
libGL: Error in /home/nikos/.drirc line 1, column 0: no element found.
libGL error: failed to load driver: swrast
display: :0 screen: 0
direct rendering: No (If you want to find out why, try setting LIBGL_DEBUG=verbose)
server glx vendor string: ATI
server glx version string: 1.4

Sorry, the locate for swrast I've already given you. Now that it works i would have to reset library paths and libraries :-(

Sivan Greenberg (sivan) said : #12

So this is quite an issue for our cloud headless PyQt servers, what is the solution on 14.04 which is an LTS version? I feel it is unacceptable for something like that to go unfixed in an LTS version..

Nikos Balkanas (nbalkanas) said : #13

I guess I did when i compiled the new mesa from sources. 14.04 LTS still needs a patch. Reopening ticket...

WyrdWyrd (gotwyrd) said : #14

All I am trying to do... is get Kodi to run in an xrdp session on this old computer.

It would not have to run terribly well as I would not really be using it to watch videos, but rather just download them for later viewing on some other computer in the house via an sftp connection.

I might try changing video cards to see if that helps any. The one in the system right now is an old Nvidia card. I have a computer next to it with an ATI card.

On the local display, I can get kodi to run if I
        export LIBGL_ALWAYS_SOFTWARE=1
first.

But on the xrdp session, I get these errors about 'No matching fbConfigs' and 'failed to load driver: swrast'.

Then about 20 occurrences of 'function is no-op' and exit.

--
Furry cows moo and decompress.

Can you help with this problem?

Provide an answer of your own, or ask Nikos Balkanas for more information if necessary.

To post a message you must log in.