XForms: Comflicts with Open-Xforms

From: R. Lahaye (lahaye@users.sourceforge.net)
Date: Sun Apr 07 2002 - 09:12:15 EDT


# To subscribers of the xforms list from "R. Lahaye" <lahaye@users.sourceforge.net> :

Hi,

I have FreeBSD 4.5 (most recent version) on my PC.

I successfully compiled Open Xforms.
I only changed XFormsInstallDir in Imakefile into "/opt",
the rest I left untouched (all are "YES"). Result:

  129586 /opt/include/X11/forms.h
 9568172 /opt/lib/libforms.a
      13 /opt/lib/libforms.so -> libforms.so.0
 2400862 /opt/lib/libforms.so.0

The LyX configure-test for Xforms fails as follows
(please see for contents of conftest.cc below):

-----------------------------------------------------------------
$ g++ -o conftest -g -O -fno-exceptions -W -Wall -I/opt/include \
  -isystem /usr/X11R6/include -L/opt/lib conftest.cc -lforms -lSM \
  -lICE -lc -lm -L/usr/X11R6/lib -lX11
/opt/lib/libforms.so: undefined reference to `XpmCreatePixmapFromData'
/opt/lib/libforms.so: undefined reference to `jpeg_read_scanlines'
/opt/lib/libforms.so: undefined reference to `XpmFreeAttributes'
/opt/lib/libforms.so: undefined reference to `jpeg_set_defaults'
/opt/lib/libforms.so: undefined reference to `glXQueryExtension'
/opt/lib/libforms.so: undefined reference to `jpeg_start_decompress'
/opt/lib/libforms.so: undefined reference to `glXMakeCurrent'
/opt/lib/libforms.so: undefined reference to `jpeg_write_marker'
/opt/lib/libforms.so: undefined reference to `jpeg_destroy_decompress'
/opt/lib/libforms.so: undefined reference to `jpeg_std_error'
/opt/lib/libforms.so: undefined reference to `jpeg_CreateDecompress'
/opt/lib/libforms.so: undefined reference to `XpmAttributesSize'
/opt/lib/libforms.so: undefined reference to `glXChooseVisual'
/opt/lib/libforms.so: undefined reference to `XpmReadFileToPixmap'
/opt/lib/libforms.so: undefined reference to `glXDestroyContext'
/opt/lib/libforms.so: undefined reference to `jpeg_set_marker_processor'
/opt/lib/libforms.so: undefined reference to `jpeg_read_header'
/opt/lib/libforms.so: undefined reference to `jpeg_start_compress'
/opt/lib/libforms.so: undefined reference to `jpeg_destroy_compress'
/opt/lib/libforms.so: undefined reference to `jpeg_finish_decompress'
/opt/lib/libforms.so: undefined reference to `jpeg_stdio_src'
/opt/lib/libforms.so: undefined reference to `jpeg_CreateCompress'
/opt/lib/libforms.so: undefined reference to `jpeg_finish_compress'
/opt/lib/libforms.so: undefined reference to `jpeg_set_quality'
/opt/lib/libforms.so: undefined reference to `jpeg_stdio_dest'
/opt/lib/libforms.so: undefined reference to `XpmLibraryVersion'
/opt/lib/libforms.so: undefined reference to `jpeg_write_scanlines'
/opt/lib/libforms.so: undefined reference to `glXCreateContext'
$
-----------------------------------------------------------------

To my great surprise the following solves the problem:

# cd /opt/lib
# ln -s libforms.a libxforms.a
# ls libxforms.a
   10 libxforms.a -> libforms.a

I then replace "-lforms" by "-lxforms" in the g++-line above
and it simply compiles! What's going on?

Regards,
Rob.

Contents of conftest.cc:

-------------------- conftest.cc --------------------
#line 11561 "configure"

#define DEVEL_VERSION 1
#define PACKAGE "lyx"
#define VERSION "1.2.0cvs"
#define HAVE_KPSEWHICH 1
#define WITH_WARNINGS 1
#define HAVE_STD_COUNT 1
#define HAVE_SSTREAM 1
#define ENABLE_ASSERTIONS 1
#define HAVE_REGEX_H 1
#define HAVE_LIBM 1
#define HAVE_LIBC 1
#define HAVE_DLFCN_H 1
#define HAVE_XOPENIM 1
#define XPM_H_LOCATION <X11/xpm.h>

/* Override any gcc2 internal prototype to avoid an error. */
#ifdef __cplusplus
extern "C"
#endif
/* We use char because int might match the return type of a gcc2
   builtin and then its argument prototype would still apply. */
char fl_initialize ();
int
main ()
{
fl_initialize ();
  ;
  return 0;
}
-------------------- conftest.cc --------------------
_________________________________________________
To unsubscribe, send the message "unsubscribe" to
xforms-request@bob.usuhs.mil or see
http://bob.usuhs.mil/mailserv/xforms.html
XForms Home Page: http://world.std.com/~xforms
List Archive: http://bob.usuhs.mil/mailserv/list-archives/



This archive was generated by hypermail 2b29 : Wed May 01 2002 - 13:54:19 EDT