OpenSolaris

Printable Version Enter a New Search
Bug ID 6424870
Synopsis add symlinks in /usr/lib to libXrandr.so, etc
State 10-Fix Delivered:Verified (Fix available in build)
Category:Subcategory xserver:client_libs
Keywords s10patch-approved
Responsible Engineer Alan Coopersmith
Reported Against
Duplicate Of
Introduced In solaris_10
Commit to Fix snv_41
Fixed In snv_41
Release Fixed solaris_nevada(snv_41) , solaris_10u4(s10u4_03) (Bug ID:2138183)
Related Bugs 6364134
Submit Date 11-May-2006
Last Update Date 16-January-2007
Description
Java 2D is now using Xrandr in our DisplayMode/fullscreen implementation in JDK 6,
which is working much better than our previous attempt that used the VidMode
extension.  For various reasons, we choose to dlopen() libXrandr.so.2 rather than
statically linking to that library, which works great on Linux, but not on S10.

Things work fine on Linux because libXrandr.so.2 is located in /usr/X11R6/lib,
which is one of the directories listed by default in /etc/ld.so.conf, so the
dlopen() call will easily locate the library at that location.  However, on S10
and above, libXrandr.so.2 is located in /usr/lib/X11, which is not one of the
default lib directories as reported by "crle" (it only searches /lib and
/usr/lib by default apparently).

So there is a short-term workaround for our users that want display mode switching
capabilities on Solaris: they can add that location to LD_LIBRARY_PATH, and
everything will work fine, but clearly this isn't ideal.  An even hackier solution
would be to hardcode the absolute paths to the library in our code, but that's
certainly not futureproof, and you also have to be wary of picking up the 32-bit or
64-bit library, depending on the situation.

It has been suggested that we could add symlinks in /usr/lib to the client libs
(libXrandr.so, etc) in /usr/lib/X11, which would solve this problem, so that is what
is being requested here.
Work Around
N/A
Comments
N/A