If you use the Sun compilers to build on Solaris, glxinfo fails to build because it can't find libGLU: LD_RUN_PATH=/usr/X11R6/lib cc -o glxinfo -xO4 -xbuiltin=%all -xlibmil -xstrconst -xpentium -xregs=no%frameptr -Xa -v -zlazyload -zcombreloc -xstrconst -xildoff -Wl,-M,/usr/lib/ld/map.noexstk -mt -L../../exports/lib glxinfo.o -lGLU -lGL -lXext -lX11 -lm -lsocket -lnsl -Wl,-z,lazyload -xO4 -xbuiltin=%all -xlibmil -xstrconst -xpentium -xregs=no%frameptr ld: fatal: library -lGLU: not found ld: fatal: File processing errors. No output written to glxinfo *** Error code 1 This is because the C++ library building rule only installed a symlink for libGLU.so.1.3 in ../../exports/lib and not a libGLU.so symlink. Fixing that allows libGLU to be found, but glxinfo still won't link: LD_RUN_PATH=/usr/X11R6/lib cc -o glxinfo -xO4 -xbuiltin=%all -xlibmil -xstrconst -xpentium -xregs=no%frameptr -Xa -v -zlazyload -zcombreloc -xstrconst -xildoff -Wl,-M,/usr/lib/ld/map.noexstk -mt -L../../exports/lib glxinfo.o -lGLU -lGL -lXext -lX11 -lm -lsocket -lnsl -Wl,-z,lazyload -xO4 -xbuiltin=%all -xlibmil -xstrconst -xpentium -xregs=no%frameptr Undefined first referenced symbol in file __1cG__CrunKpure_error6F_v_ ../../exports/lib/libGLU.so __1cG__CrunMex_rethrow_q6F_v_ ../../exports/lib/libGLU.so __1c2N6FI_pv_ ../../exports/lib/libGLU.so __1c2n6FI_pv_ ../../exports/lib/libGLU.so __1c2K6Fpv_v_ ../../exports/lib/libGLU.so __1c2k6Fpv_v_ ../../exports/lib/libGLU.so ld: fatal: Symbol referencing errors. No output written to glxinfo *** Error code 1 This is because the library dependencies for libGLU on Solaris aren't set to include the C++ runtime library. Fixing that allows glxinfo to build successfully. Patch to do so follows next.
Created attachment 2635 [details] [review] Patch to fix libGLU/glxinfo builds on Solaris Patch to change Imake config files to: - Set C++ runtime library to -lCrun when using Sun C++ 5.0 or newer - Make .so -> .so.$REV links in $TOP/export/lib for C++ libraries on SVR4 in the same way we already do for C libraries - Set libGLU required libraries list for Solaris
Fix committed to CVS head: CVSROOT: /cvs/xorg Module name: xc Changes by: alanc@gabe.freedesktop.org 05/05/08 14:13:36 Log message: 2005-05-08 Alan Coopersmith <alan.coopersmith@sun.com> * xc/config/cf/sun.cf: * xc/config/cf/sunLib.tmpl: * xc/config/cf/sv4Lib.rules: Bugzilla #3243: https://bugs.freedesktop.org/show_bug.cgi?id=3243 Patch #2635: https://bugs.freedesktop.org/attachment.cgi?id=2635 libGLU/glxinfo build fixes for Sun C++ compiler on Solaris: - Set C++ runtime library to -lCrun when using Sun C++ 5.0 or newer - Make .so -> .so.$REV links in $TOP/export/lib for C++ libraries on SVR4 in the same way we already do for C libraries - Set libGLU required libraries list for Solaris Modified files: ./: ChangeLog xc/config/cf/: sun.cf sunLib.tmpl sv4Lib.rules Revision Changes Path 1.913 +13 -0 xc/ChangeLog 1.12 +5 -0 xc/config/cf/sun.cf 1.7 +2 -1 xc/config/cf/sunLib.tmpl 1.5 +4 -0 xc/config/cf/sv4Lib.rules
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.