Bug 229808 - libGL.so.1 no longer contains glXGetCurrentContext symbol
libGL.so.1 no longer contains glXGetCurrentContext symbol
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: mesa (Show other bugs)
rawhide
All Linux
medium Severity high
: ---
: ---
Assigned To: Adam Jackson
Fedora Extras Quality Assurance
:
: 230223 (view as bug list)
Depends On:
Blocks: FE7Target
  Show dependency treegraph
 
Reported: 2007-02-23 11:33 EST by Michael Schwendt
Modified: 2007-11-30 17:11 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2007-02-26 11:26:39 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Michael Schwendt 2007-02-23 11:33:51 EST
Packages that build with or detect freeglut-devel fail like this:

/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../libglut.so: undefined reference to
`glXGetCurrentContext'

Build Date: Mon 28 Aug 2006 06:26:05 AM CEST
Source RPM: freeglut-2.4.0-10.fc6.src.rpm

Please rebuild the package for Fedora 7.
Comment 1 Hans de Goede 2007-02-23 17:03:01 EST
This is not a freeglut problem, but rather a mesa-libGL problem, mesa-libGL used
to contain glXGetCurrentContext and now no longer does, thus breaking ABI
compatibilty and that while keeping the same hostname, also libGL.so.1 now has
week symbols itself, causing many apps trying to link against it to fail:
[hans@shalem comps]$ ldd -r /usr/lib64/libGL.so.1
        libX11.so.6 => /usr/lib64/libX11.so.6 (0x00002aaaaad4f000)
        libXext.so.6 => /usr/lib64/libXext.so.6 (0x00002aaaab05a000)
        libXxf86vm.so.1 => /usr/lib64/libXxf86vm.so.1 (0x00002aaaab26b000)
        libm.so.6 => /lib64/libm.so.6 (0x00002aaaab471000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00002aaaab6f4000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00002aaaab90e000)
        libdrm.so.2 => /usr/lib64/libdrm.so.2 (0x00002aaaabb13000)
        libc.so.6 => /lib64/libc.so.6 (0x00002aaaabd1b000)
        libXau.so.6 => /usr/lib64/libXau.so.6 (0x00002aaaac069000)
        libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6 (0x00002aaaac26c000)
        /lib64/ld-linux-x86-64.so.2 (0x0000555555554000)
undefined symbol: drmOpenOnce   (/usr/lib64/libGL.so.1)
undefined symbol: drmCloseOnce  (/usr/lib64/libGL.so.1)

Also simply rebuilding freeglut doesn't work because of this:
/usr/lib64/libGL.so: undefined reference to `drmOpenOnce'
../../../src/.libs/libglut.so: undefined reference to `glXGetCurrentContext'
/usr/lib64/libGL.so: undefined reference to `drmCloseOnce'

I'm going to bed now as its getting late over here, and take a closer look
tomorrow, but for now I tend to change the component of this bug to mesa-libGL
and reasign it to the mesa owner. If you agree feel free todo this while I'm
sleeping :)
Comment 2 Hans de Goede 2007-02-23 17:14:37 EST
Hmm, I just had one last awake moment and decide to also upgrade libdrm, that
fixes the drmOpenOnce and CloseOnce problem, but still leaves the fact that
before I did a yum update 'mesa*' freeglut was fine, and thus the new libGL.so.1
isn't abi compatible with the old, which is bad (same soname)!

Further digging shows that glXGetCurrentContext still is declared in Mesa's
current source  tree see:
http://gitweb.freedesktop.org/?p=mesa/mesa.git;a=blob;h=973f3940451935e4ffcc5e0e5aeb7b658c1968bc;hb=5e66843733c8123e73cadc1bc5c6111d64abaf25;f=src/mesa/drivers/x11/glxapi.c

I'm really pretty sure this is a mesa problem, changing component, description,
etc. Jackson, reassigning to you.
Comment 3 Michael Schwendt 2007-02-23 18:14:39 EST
Oh, mesa-libGL-6.5.2-5 changelog mentions it was built with
-fvisibility=hidden, so most likely you're right.
Comment 4 Adam Jackson 2007-02-26 11:26:39 EST
Good catch.

The libdrm issue was due to needing new symbols available in 2.3.0 without
having an explicit Requires for them.  Fixed.  The missing glXGetCurrentContext
is actually a Mesa bug where it wasn't marked as public; fixed in rawhide, will
fix in upstream shortly.

Both will be sorted in 6.5.2-6, which is building now.  Thanks!
Comment 5 Adam Jackson 2007-02-27 11:40:08 EST
*** Bug 230223 has been marked as a duplicate of this bug. ***

Note You need to log in before you can comment on or make changes to this bug.