You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@httpd.apache.org by bu...@apache.org on 2002/06/24 23:07:26 UTC

DO NOT REPLY [Bug 10195] New: - Configure script erroneously detects system Expat

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10195>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10195

Configure script erroneously detects system Expat

           Summary: Configure script erroneously detects system Expat
           Product: Apache httpd-1.3
           Version: 1.3.25
          Platform: Sun
        OS/Version: Solaris
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Build
        AssignedTo: bugs@httpd.apache.org
        ReportedBy: mccullj@email.uah.edu


Building Apache 1.3.26 (which is not on the version menu yet) the 
"old-fashioned" way (src/Configure).  Didn't change Configuration, using all 
defaults.  Output of Configure shows "using system Expat", even though Expat is 
not installed.  Here is output of Configure:

./Configure
Using config file: Configuration
Creating Makefile
 + configured for Solaris 251 platform
 + setting C compiler to gcc
 + setting C pre-processor to gcc -E
 + checking for system header files
 + adding selected modules
 + using system Expat
 + checking sizeof various data types
 + doing sanity check on compiler and options
Creating Makefile in support
Creating Makefile in os/unix
Creating Makefile in ap
Creating Makefile in main
Creating Makefile in modules/standard

I suspect that helpers/TestCompile is not reporting an error, leading the 
Configure script to think that Expat is installed.  When I do the make, it dies 
at this point:

===> main
gcc -c  -I../os/unix -I../include   -DSOLARIS2=251 -DNO_DL_NEEDED  gen_test_char
.c
gcc  -DSOLARIS2=251 -DNO_DL_NEEDED    -o gen_test_char gen_test_char.o  -lsocket
 -lnsl -lpthread -lexpat
./gen_test_char >test_char.h
ld.so.1: ./gen_test_char: fatal: libexpat.so.0: open failed: No such file or dir
ectory
Killed
make[1]: *** [test_char.h] Error 137
make: *** [subdirs] Error 1

The way I have gotten around this problem for my machine is to comment out part 
of the script starting at about line 1885 as follows:

if [ "x$RULE_EXPAT" = "xyes" ]; then
#    if ./helpers/TestCompile lib expat; then
#        echo " + using system Expat"
#        LIBS="$LIBS -lexpat"
#    else
#        if [ ! -d ./lib/expat-lite/ ]; then
#            echo "ERROR: RULE_EXPAT set to \"yes\" but is not available."
#           exit 1
#        fi
        echo " + using builtin Expat"
        EXPATLIB="lib/expat-lite/libexpat.a"
        APLIBDIRS="expat-lite $APLIBDIRS"
        CFLAGS="$CFLAGS -DUSE_EXPAT -I\$(SRCDIR)/lib/expat-lite"
#    fi

This causes the distributed Expat to be compiled and used, and the make finishes 
as expected.

This was also a problem in 1.3.23.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org