Re: Error when linking swrast_dri.so: "undefined symbol: _glapi_tls_Dispatch"

Brian Paul <[email protected]>
Newsgroups gmane.comp.video.mesa3d.user
Message-ID <[email protected]>
On 12/24/2014 09:37 AM, Heng Zhou wrote:
> Hi,
>
> I am using Amazon ubuntu instance (t2.micro type) to try to run some
> OpenGL applications. Since this type of instance does not provide GPU
> support, I have to install mesa to obtain OpenGL functionality. But
> after installation of mesa version 10.3.5 (build from source, not
> apt-get install mesa-common-dev), reboot and run some OpenGL
> applications, I always got errors. I created a dummy display, as
> suggested by Petre Eftime
> (http://lists.freedesktop.org/archives/mesa-users/2014-December/000908.html
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.freedesktop.org_archives_mesa-2Dusers_2014-2DDecember_000908.html&d=AwMFaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=T0t4QG7chq2ZwJo6wilkFznRSFy-8uDKartPGbomVj8&m=WaCT6SnxES98A1QUXbjOH55y-tZIbF9S9NJC0-BSttQ&s=HHJEvvDeqUdH1oP4-ZTo7v_eWgRUx3GHlOP4g8tiIsc&e=>),
> using command
>
> Xorg -noreset +extension GLX +extension RANDR +extension RENDER -logfile ./10.log -config ./xorg.conf :10
>
> suggested in https://www.xpra.org/trac/wiki/Xdummy
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__www.xpra.org_trac_wiki_Xdummy&d=AwMFaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=T0t4QG7chq2ZwJo6wilkFznRSFy-8uDKartPGbomVj8&m=WaCT6SnxES98A1QUXbjOH55y-tZIbF9S9NJC0-BSttQ&s=VUI4FXeQwA_NGswwL4LDCV0pC5sOizlmJEfXyEiWBTY&e=>.
> But the same error comes out. For example,
>
> If I run glxinfo -display :10 (:10 is the display I created using
> Xdummy), I got:
> name of display: :10
> Error: couldn't find RGB GLX visual or fbconfig
> Error: couldn't find RGB GLX visual or fbconfig
>
> If I run glxgears -display :10, I got:
> Error: couldn't get an RGB, Double-buffered visual
>
> If I run glmark2, I got:
> Error: GLX version >= 1.3 is required
> Error: Error: Could not get a valid XVisualInfo!
> Error: Error: Couldn't create X Window!
> Error: main: Could not initialize canvas
>
> To find out the reason, I check the log file 10.log, using "grep EE
> 10.log". The results returned are:
>      (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
> [ 10203.744] Initializing built-in extension MIT-SCREEN-SAVER
> [ 10203.756] (EE) AIGLX: reverting to software rendering
> [ 10203.762] (EE) AIGLX error: dlopen of
> /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so failed
> (/usr/lib/x86_64-linux-gnu/dri/swrast_dri.so: undefined symbol:
> _glapi_tls_Dispatch)
> [ 10203.762] (EE) GLX: could not load software renderer
>
> Form the log, it can be seen that there is an error when linking
> dynamically to swrast_dri.so, which is a software driver that should be
> used because Amazon EC2 t2.micro instance does not provide any hardware
> graphics card, and this is a part of mesa (so I asked here). Due to the
> failure to link to this indispensable software driver, GLX could not be
> loaded, leading to above error messages involving GLX, to the best of my
> understanding.
>
> So I think it is not the display limit of t2.micro instance, but the
> failed linking of mesa's software driver *swrast* that lead to failures
> to run OpenGL applications. For this reason, I wonder if anyone could
> help me solve this problem, e.g., by disabling the AIGLX or something.
> Thank you very much for the help.
>
> For your reference, below is the output of the command "ldd
> /usr/lib/xorg/modules/extensions/libglx.so"
>
>      linux-vdso.so.1 =>  (0x00007f04cd423000)
>      libGL.so.1 => /usr/local/lib/libGL.so.1 (0x00007f04ccf13000)
>      libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
> (0x00007f04cccf5000)
>      libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f04ccaf0000)
>      libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f04cc72a000)
>      libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1
> (0x00007f04cc500000)
>      libglapi.so.0 => /usr/local/lib/libglapi.so.0 (0x00007f04cc2a5000)
>      libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6
> (0x00007f04cc093000)
>      libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1
> (0x00007f04cbe90000)
>      libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3
> (0x00007f04cbc89000)
>      libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1
> (0x00007f04cba87000)
>      libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6
> (0x00007f04cb752000)
>      libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0
> (0x00007f04cb53a000)
>      libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0
> (0x00007f04cb335000)
>      libxcb-dri3.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0
> (0x00007f04cb132000)
>      libxcb-present.so.0 =>
> /usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007f04caf2e000)
>      libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1
> (0x00007f04cad28000)
>      libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1
> (0x00007f04cab09000)
>      libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1
> (0x00007f04ca906000)
>      libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1
> (0x00007f04ca700000)
>      libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2
> (0x00007f04ca4f4000)
>      libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f04ca1ed000)
>      /lib64/ld-linux-x86-64.so.2 (0x00007f04cd425000)
>      libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6
> (0x00007f04c9fe9000)
>      libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6
> (0x00007f04c9de2000)
>
>

Try building Mesa with the --enable-glx-tls flag.

-Brian



_______________________________________________
mesa-users mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.