undefined symbol
Daniel Sperka
djsperka at ucdavis.edu
Tue Jan 31 09:46:35 PST 2006
Just discovered that in the source I have (latest CVS), you need to
define USING_EGL when you run the make command:
cd /wherever/Mesa
make linux-dri USING_EGL=1
This brings in the source file that has the required symbols to
r200_dri.so. There is a comment in configs/linux-dri about how USING_EGL
was once defined by default but that's changed.
Now I can run eglgears. I get an error message about a missing file
(.drirc), a white screen and a locked up machine. Now that's what I call
progress!
Dan
Dane Rushton wrote:
> Hi,
>
> r200_dri is the correct driver. The radeon one is for older cards.
> It determines which one to use from:
> /sys/class/drm/card0/dri_library_name
>
> I had similar problems getting the examples and info programs going with
> various 'undefined symbol' errors.
> It appears the linker isn't pulling in dependant libraries properly. You
> can force it by using LD_PRELOAD, such as:
> LD_PRELOAD="/usr/lib/libEGLdri.so /usr/lib/libGL.so"
> ./Mesa/progs/egl/eglgears
>
> That will get eglgears, eglinfo, and demo3 working from the
> Mesa/progs/egl directory. demo1 and demo2 still are trying to use the
> old fb_dri. Should probably fix them and submit a patch.
> To get glitzinfo and glitz's rendertest going you will have to edit some
> code as they haven't been updated to the new EGL api.
> Basically change 'eglShowSurfaceMESA' to eglShowScreenSurfaceMESA'. I
> should probably submit a patch for that as well.
>
> By the way, I had to run them as root. Jon Smirl's patch to enable
> non-priviledged users in DRM from a while back won't work anymore due to
> a change in the format of the DRM code, but it should be straightforward
> to update it manually.
>
> Hope that helps.
>
> Cheers
> Dane
>
>
> Daniel Sperka wrote:
>
>> I'm experiencing the same problem with kernel 2.6.15.1, latest CVS drm
>> and Mesa.
>>
>> Where is egl making its determination of the driver to use? Why
>> doesn't it choose radeon_dri.so instead of r200_dri.so?
>>
>> Where does egl get its configuration from?
>>
>>
>> Thanks.
>>
>> Dan
>>
>> Otto Solares wrote:
>>
>>> Hi!
>>>
>>> I compile linux-dri with EGL enabled, it compiles fine but
>>> when running the demos at progs/egl I get errors.
>>>
>>> These demos runs fine when using eglGetDisplay with
>>> EGL_DEFAULT_DISPLAY as it uses the demodriver, r200_dri
>>> have undefined symbols.
>>>
>>> Also compiling fb_dri when added to the DRI_DIRS is broken.
>>>
>>> I was using linux-solo like a year ago, I just recently realize
>>> about this extension which is _much_much_ better so keep the
>>> good work!
>>>
>>> EGL Info: eglChooseDriver() choosing r200_dri
>>> EGL Debug: dlopen(r200_dri.so)
>>> EGL Warning: Could not open r200_dri.so
>>> (/home/solca/devel/Mesa/lib/r200_dri.so: undefined symbol:
>>> _glapi_Dispatch)
>>> eglinfo: eglInitialize failed
>>>
>>> -otto
More information about the dri-egl
mailing list