Hi. We're trying to use Haskell Graphics library for X on our solaris machines. Compiling works fine but when we're trying to run the example we get the following error message: Reading file "../../demos/HelloWorld.hs": Reading file "GraphicsUtils.hs": Reading file "GraphicsCore.hs": Reading file "GraphicsEvent.hs": Reading file "GraphicsKey.hs": Reading file "X.hs": Reading file "Xlib_StdDIS.hs": Reading file "/users/cs/josefs/share/hugs/lib/exts/Int.hs": Reading file "/users/cs/josefs/share/hugs/lib/exts/Bits.hs": Reading file "/users/cs/josefs/share/hugs/lib/exts/Int.hs": Reading file "/users/cs/josefs/share/hugs/lib/exts/Word.hs": Reading file "/users/cs/josefs/share/hugs/lib/Numeric.hs": Reading file "/users/cs/josefs/share/hugs/lib/Char.hs": Reading file "/users/cs/josefs/share/hugs/lib/Ratio.hs": Reading file "/users/cs/josefs/share/hugs/lib/Numeric.hs": Reading file "/users/cs/josefs/share/hugs/lib/exts/Word.hs": Reading file "/users/cs/josefs/share/hugs/lib/exts/Addr.hs": Reading file "/users/cs/josefs/share/hugs/lib/Monad.hs": Reading file "/users/cs/josefs/share/hugs/lib/exts/Foreign.hs": Reading file "Xlib_StdDIS.hs": Parsing ERROR "Xlib_StdDIS.hs" - Error while importing DLL "/users/cs/josefs/packages/graphics-2.0.4/lib/x11/Xlib_StdDIS.so": ld.so.1: runhugs: fatal: relocation error: file /usr/X11/lib/libX11.so.6.1: symbol authdes_create: referenced symbol not found I seems to be some incompabilities with the X11 lib but I've no idea what it is or what to do about it. Any ideas? Here's some perhaps relevant info: josefs@muppet90> uname -a SunOS muppet90.cs.chalmers.se 5.7 Generic_106541-16 sun4u sparc SUNW,Ultra-5_10 josefs@muppet90> gcc -v gcc version 2.95.3 20010315 (release) hugs is December 2001 Cheers, /Josef
Hi. We're trying to use Haskell Graphics library for X on our solaris machines. Compiling works fine but when we're trying to run the example we get the following error message:
It looks like you'll need to tweak the HGL build process as follows: 1) Find out which library provides authdes_create. On my Linux box, I use the following command to find it. $ nm -A /usr/lib/*.a | grep authdes_create /usr/lib/libc.a:auth_des.o:00000000 T authdes_create /usr/lib/libnsl.a:ypclnt.o: U authdes_create Looks like libnsl requires the symbol and libc provides it. Since you're presumably linking against libc already, it must be in a different library on Solaris. 2) Tell Make where to find authdes_create For example, if you needed to add libc, you'd use this to invoke the Makefile gmake -C graphics-2.0.4/lib/x11 system=SunOS LDFLAGS=-lc (other flags may be requires as suggested in graphics-2.0.4/Install) Hope this helps. Please let me know if this works or needs modified so that I can improve the instructions or build process. -- Alastair Reid
On 8 May 2002, Alastair Reid wrote:
Hi. We're trying to use Haskell Graphics library for X on our solaris machines. Compiling works fine but when we're trying to run the example we get the following error message:
It looks like you'll need to tweak the HGL build process as follows:
1) Find out which library provides authdes_create. On my Linux box, I use the following command to find it.
$ nm -A /usr/lib/*.a | grep authdes_create /usr/lib/libc.a:auth_des.o:00000000 T authdes_create /usr/lib/libnsl.a:ypclnt.o: U authdes_create
Looks like libnsl requires the symbol and libc provides it. Since you're presumably linking against libc already, it must be in a different library on Solaris.
Well, I finally managed to get it to work. On our machines it's libnsl that provides authdes_create so I linked against it. I had to link against a few others as well. Here's the list: Lib Symbol nsl authdes_create X11 XAllPlanes socket getsockname Thanks alot! /Josef
participants (2)
-
Alastair Reid -
Josef Svenningsson