[CF-Devel] Bug - Xpm and Png libraries detection
gros
yann.chachkoff at mailandnews.com
Wed May 16 06:38:49 CDT 2001
Description:
---------
The detection of the XPM and PNG libraries on some Linux Systems (This bug
was discovered on Mandrake 8.0) by configure fails, resulting in a crossedit
running with the old graphics only.
Source of the problem:
----------------
The configure script tests the existence of various X11 libraries by trying
to compile small test programs against them. For nearly all X11 libraries,
the test compilation line is like this one:
configure:2836: gcc -o conftest -g -O2 -lSM -lICE -L/usr/X11R6/lib
conftest.c -lX11 -lnsl 1>&5
but for the Xpm and Png libraries, it is (at least on Mandrake):
configure:3203: gcc -o conftest -g -O2 conftest.c -lpng -lX11 -lm -lnsl
1>&5
Having checked the configure.in used to initially generate configure, I found
the difference:
Correct checking:
AC_CHECK_LIB(Xaw, main, AC_DEFINE(HAVE_LIBXAW) X11LIBS="-lXaw $X11LIBS", ,
$X11LIBS)
Incorrect one:
AC_CHECK_LIB(Xpm, main, AC_DEFINE(HAVE_LIBXPM) X11LIBS="$X11LIBS -lXpm", ,
-lX11 )
It appears that on some systems, -lX11 is not sufficient to compile the test
program.
Solution:
-------
Correcting the two lines in configure.in to:
AC_CHECK_LIB(Xpm, main, AC_DEFINE(HAVE_LIBXPM) X11LIBS="$X11LIBS -lXpm", ,
$X11LIBS )
AC_CHECK_LIB(png, main, AC_DEFINE(HAVE_LIBPNG) X11LIBS="$X11LIBS -lpng", ,
$X11LIBS )
and regenerating the configure script does solve the problem.
Chachkoff Y.
More information about the crossfire
mailing list