Bug #13220 configure checking for custom zlib fails
Submitted: 15 Sep 2005 11:47 Modified: 15 Sep 2005 14:45
Reporter: Igor Klechkovsky Email Updates:
Status: Can't repeat Impact on me:
None 
Category:MySQL Server Severity:S3 (Non-critical)
Version:4.1.x 5.0.x OS:Other (Tru64 UNIX 5.1B-2 (2650))
Assigned to: CPU Architecture:Any

[15 Sep 2005 11:47] Igor Klechkovsky
Description:
configure don't found zlib (zlib.h) in /usr/local.
Compaq C v6.5-011
Compaq C++ v6.5-042
There are files:
/usr/lib/libz.a
/usr/local/lib/libz.a
/usr/local/lib/libz.so
/usr/local/lib/libz.so.1
/usr/local/lib/libz.so.1.1.4
/usr/sys/include/streamsm/zlib.h
/usr/local/include/zconf.h
/usr/local/include/zlib.h.

checking for sem_init in -lposix4... no
checking for zlib compression library... configure: error: headers or binaries were not found in /usr/local/{include,lib}

How to repeat:
PATH=/sbin:/usr/sbin:/usr/bin:/usr/ccs/bin:/usr/bin/X11:/usr/local/bin:
/usr/local/cygnus/tru64-010710/H-alphaev56-dec-osf5.1/bin
CC=cc -pthread
CXX=cxx -pthread
CFLAGS=-O4 -fast -arch host -inline speed -speculate all
CXXFLAGS=-O4 -fast -inline speed -noexceptions -nortti
./configure --prefix=/usr/local/mysql --enable-thread-safe-client --enable-local-infile --disable-shared --with-named-thread-libs="-lpthread -lmach -lexc -lc" --with-mysqld-ldflags=-all-static --without-docs --without-debug --without-bench --with-zlib-dir=/usr/local
[15 Sep 2005 14:45] Valeriy Kravchuk
I was unable to repeat on our Tru64 machine with 4.1.14 and the following configure command:

CC="cc -pthread" \
CXX="cxx -pthread" \
CFLAGS="-O4 -fast -arch host -inline speed -speculate all" \
CXXFLAGS="-O4 -fast -inline speed -noexceptions -nortti" ./configure --prefix=/usr/local/mysql \
--enable-thread-safe-client \
--enable-local-infile --disable-shared --with-named-thread-libs="-lpthread \
-lmach -lexc -lc" --with-mysqld-ldflags=-all-static --without-docs \
--without-debug --without-bench --with-zlib-dir=/local

configure worked till the end successfully. 

In the config.log I found:

configure:24130: checking for zlib compression library
configure:24276: cc -pthread -o conftest -O4 -fast -arch host -inline speed -spe
culate all   -I/usr/local/include -L/usr/local/lib conftest.c -lm  -L/local/lib

-lz >&5
cc: Warning: conftest.c, line 75: In this statement, the referenced type of the
pointer value """" is "char", which is not compatible with "const unsigned char"
because they differ by signed/unsigned attribute. (ptrmismatch1)
return compress(0, (unsigned long*) 0, "", 0);
---------------------------------------^
configure:24282: $? = 0
configure:24286: test -z
                         || test ! -s conftest.err
configure:24289: $? = 0
configure:24292: test -s conftest
configure:24295: $? = 0
configure:24298: result: ok
...

Other relevant details:

mysqldev@barney:~/valeriy/mysql-4.1.14> ls -F /local/include/z*
/local/include/zconf.h   /local/include/zlib.h

mysqldev@barney:~/valeriy/mysql-4.1.14> uname -a
OSF1 barney... V5.1 2650 alpha

mysqldev@barney:~/valeriy/mysql-4.1.14> echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/sbin:/sbin:/usr/local/samba/bi
n:/usr/local/bin:/usr/local/majordomo/bin:/usr/local/mysql/bin:/usr/local/pgsql/
bin:/usr/internet/httpd/bin:/usr/internet/openldap/bin

So, as you can see, there is zlib.h in the /local/include directory, and configure just worked.
[16 Sep 2005 8:42] Igor Klechkovsky
My config.log differ:
configure:24130: checking for zlib compression library
configure:24276: cc -pthread -o conftest -O4 -fast -arch host -inline speed -speculate all     conftest.c -lm  -L/usr/local/lib -lz >&5
cc: Severe: conftest.c, line 70: Cannot find file <zlib.h> specified in #include directive. (noinclfilef)
#include <zlib.h>
-^
configure:24282: $? = 1
configure: failed program was:
| /* confdefs.h.  */
...
| }
configure:24316: error: headers or binaries were not found in /usr/local/{include,lib}
    There is no -I/usr/local/include in the config.log.
Why do you have it?
Do you have /usr/local/include/zlib.h?
[16 Sep 2005 15:37] Valeriy Kravchuk
Hope the following information will help you:

mysqldev@barney:~> find /usr -name zlib.* -print 2>/dev/null
/usr/sys/include/streamsm/zlib.h
mysqldev@barney:~> find /local -name zlib.* -print 2>/dev/null
/local/include/zlib.h
/local/lib/python2.3/lib-dynload/zlib.so
/local/share/man/man3/zlib.3
/local/users/mysqldev/valeriy/mysql-4.1.14/zlib/zlib.h
/local/users/mysqldev/valeriy/mysql-4.1.14/zlib/zlib.3
/local/users/mysqldev/joerg/mysql-4.1.4-gamma/zlib/zlib.h
/local/users/mysqldev/joerg/mysql-4.1.4-gamma/zlib/zlib.3
/local/users/mysqldev/joerg/mysql-4.1.6-gamma/zlib/zlib.h
/local/users/mysqldev/joerg/mysql-4.1.6-gamma/zlib/zlib.3
/local/users/mysqldev/tomas/mysql-4.1.7-gamma/zlib/zlib.h
/local/users/mysqldev/tomas/mysql-4.1.7-gamma/zlib/zlib.3
/local/users/mysqldev/4.1.8-ndbtest/mysql-4.1.8/zlib/zlib.h
/local/users/mysqldev/4.1.8-ndbtest/mysql-4.1.8/zlib/zlib.3
/local/users/mysqldev/pem/mysql-5.0.7-20050524/config/ac-macros/zlib.m4
/local/users/mysqldev/pem/mysql-5.0.7-20050524/zlib/zlib.h
/local/users/mysqldev/pem/mysql-5.0.7-20050524/zlib/zlib.3
/local/users/mysqldev/magnus/mysql-4.1.11/zlib/zlib.h
/local/users/mysqldev/magnus/mysql-4.1.11/zlib/zlib.3
/local/users/mysqldev/barney/pekka/zlib/zlib.h
/local/users/mysqldev/barney/pekka/zlib/zlib.3
mysqldev@barney:~>
[20 Sep 2005 10:23] Igor Klechkovsky
May be you exporting CPPFLAGS?