VirtualBox

Opened 14 years ago

Closed 14 years ago

#5297 closed defect (fixed)

Guest Addition's libGL.so doesn't provide XDamage* => Fixed in SVN/3.1.6

Reported by: Brett Albertson Owned by:
Component: guest additions Version: VirtualBox 3.0.8
Keywords: Cc:
Guest type: Solaris Host type: other

Description (last modified by Ramshankar Venkataraman)

After installing the Guest Additions for 3.0.8 (or any 3.0.x), I can't compile KDE on OpenSolaris. After investigating, the error is the following:

pkgbuild: Undefined                     first referenced
pkgbuild:  symbol                           in file
pkgbuild: XDamageDestroy                      /usr/lib/libGL.so
pkgbuild: XDamageCreate                       /usr/lib/libGL.so
pkgbuild: XDamageQueryExtension               /usr/lib/libGL.so
pkgbuild: XDamageQueryVersion                 /usr/lib/libGL.so
pkgbuild: ld: fatal: symbol referencing errors. No output written to opengl

After investigating further, the libGL.so provided by the GuestAdditions for Solaris doesn't provide the XDamage* functions and the original does.

bretta@dev-zero:/usr/X11/lib/mesa$ nm libGL_original_.so.1 | grep -i damage
[2561]	|         0|         0|FUNC |GLOB |0    |UNDEF  |XDamageAdd
[3408]	|         0|         0|FUNC |GLOB |0    |UNDEF  |XDamageQueryVersion
[1001]	|    331676|       656|FUNC |LOCL |0    |13     |__glXReportDamage
[1016]	|    536624|        12|OBJT |LOCL |0    |22     |damageExtension
bretta@dev-zero:/usr/X11/lib/mesa$ nm libGL.so.1 | grep -i damage
bretta@dev-zero:/usr/X11/lib/mesa$

Brett Albertson

Change History (7)

comment:1 by Frank Mehnert, 14 years ago

Guest type: otherSolaris

comment:2 by Ramshankar Venkataraman, 14 years ago

Description: modified (diff)

comment:3 by Ramshankar Venkataraman, 14 years ago

Try linking your KDE with libXDamage.so. libGL doesn't provide those functions just uses them. They are exported by libXdamage.so.

vbox@osolvm:~$ nm /usr/lib/libXdamage.so | grep -i damage
/usr/lib/libXdamage.so:
[59]	|         0|         0|OBJT |GLOB |0    |ABS    |libXdamage_1.0
[62]	|         0|         0|OBJT |GLOB |0    |ABS    |libXdamage_1.1
[1]	|         0|         0|FILE |LOCL |0    |ABS    |libXdamage.so.1
[77]	|      5072|       198|FUNC |GLOB |0    |13     |XDamageAdd
[45]	|         0|         0|FILE |LOCL |0    |ABS    |Xdamage.c
[46]	|      3644|       207|FUNC |LOCL |0    |13     |XDamageCloseDisplay
[55]	|      4432|       235|FUNC |GLOB |0    |13     |XDamageCreate
[72]	|      4668|       195|FUNC |GLOB |0    |13     |XDamageDestroy
[48]	|      4080|       196|FUNC |LOCL |0    |13     |XDamageEventToWire
[37]	|     74224|        12|OBJT |LOCL |2    |22     |XDamageExtensionInfo
[38]	|      5332|         7|OBJT |LOCL |2    |16     |XDamageExtensionName
[35]	|      2972|       669|FUNC |LOCL |2    |13     |XDamageFindDisplay
[67]	|      4276|        78|FUNC |GLOB |0    |13     |XDamageQueryExtension
[81]	|      4356|        74|FUNC |GLOB |0    |13     |XDamageQueryVersion
[80]	|      4864|       207|FUNC |GLOB |0    |13     |XDamageSubtract
[47]	|      3852|       225|FUNC |LOCL |0    |13     |XDamageWireToEvent
vbox@osolvm:~$ 

comment:4 by Rand S. Huntzinger, 14 years ago

I seem to be having a similar problem except that I'm not compiling the software - I'm using a binary distribution of KDE from bionicmutton. When I try to start KDE using the startkde script from an xterm I find that it can't find the XDamageDestroy function. You suggested that the one could link in XDamage.so which you can do if you're building KDE but you can't do that if you're using a binary distribution. KDE works fine on OpenSolaris build 130 on bare metal but if fails using VirtualBox. It would seem that your libGL.so.1 replacement needs to be modified to require XDestroy.so to be loaded so that it doesn't have to be done in the calling program.

I'm using VirtualBox Guest Additions 3.1.1 on OpenSolaris build 130.

in reply to:  3 comment:5 by hajma, 14 years ago

Replying to ramshankar:

Try linking your KDE with libXDamage.so. libGL doesn't provide those functions just uses them. They are exported by libXdamage.so.

thanks for the hint. KDE4 can be built with Additions using -lXdamage and it no longer crashes. For KDE/Solaris users here: this will be fixed in the KDE 4.4 RC2 packages (i.e. soonish)

comment:6 by Frank Mehnert, 14 years ago

Summary: Guest Addition's libGL.so doesn't provide XDamage*Guest Addition's libGL.so doesn't provide XDamage* => Fixed in SVN/3.1.6

This will be fixed in the next maintenance release.

comment:7 by Frank Mehnert, 14 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use