Subject: Re: xforms and undefined reference to `fl_initialize'
To: Jeremy C. Reed <reed@reedmedia.net>
From: Frederick Bruckman <fb@enteract.com>
List: netbsd-help
Date: 02/03/2001 18:09:40
On Sat, 3 Feb 2001, Jeremy C. Reed wrote:

> (I am not sure why libGL is needed.) So I added "-lGL" and it works. I now
> have a working demo from http://world.std.com/~xforms/examples/yesno.html.

"-lGL" is needed because the libraries were evidently linked against
libGL.so when they were built. Because xforms is not OpenSource, this
was only discovered recently. The ideal thing would be to build the
binary package from source like other packages, then we could, for
instance, build with or without libGL as an option. TC Zhao has been
promising to open up the source "real soon now" for a couple of years,
so don't hold your breath.

> > I can not figure out how to get a simple C program to use this library. I
> > don't have an .o shared library. I tried looking at the Makefiles and
> > build output for lyx and dap which both use xforms for examples (and both
> > build successfully on my system), but I can't figure it out.
> >
> > It is interesting to note that the NetBSD pkgsrc Makefile says:
> > "Run-time link editor tries to resolve libGL.so symbols when linking with
> > shared libxforms, but all the packages that requre xforms seem to work OK
> > without -lGL, so for now, remove the shared lib."

I did that. Maybe it would have been better to bite the bullet and
have the package pull in Mesa, but at the time, the Mesa package was
in flux, and that looked like a can of worms, too. Once we switch to
XFree86-4.x, there will be no problem, as XFree86-4.x now includes
libGL.

A few developers have said that they're working with TC Zhao to build
recent xforms on NetBSD. That would be nice, because then they could
presumably say with authority whether they linked the library with
"-lGL", or not, so we can get it right for the updated package. I
still don't see any NetBSD binaries newer than a year old on the
xforms web page, though, and they're all xforms-0.88, not xforms-0.89.


Frederick