[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