On 29/04/2013 11:30 p.m., C. Pelissier wrote:
Hi,
Squid 3.2.10 failed to compile under Solaris 10
Error : src/ip/Intercept.cc does not find include file src/tools.h
../src -I../../include -I../../libltdl -I/usr/sfw/include -Wall
-Wpointer-arith -Wwrite-strings -Wcomments -pipe -D_REENTRANT -pthreads
-Usparc -Uunix -Ui386 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2
-MT Intercept.lo -MD -MP -MF .deps/Intercept.Tpo -c Intercept.cc -fPIC
-DPIC -o .libs/Intercept.o
Intercept.cc:37:23: src/tools.h: No such file or directory
Configure options are :
CFLAGS=-std=c99 ./configure --prefix=$PREFIX
--disable-strict-error-checking --localstatedir=/var/squid
--with-pthreads --enable-default-err-language=French
--enable-err-languages="French"
--with-build-environment=POSIX_V6_ILP32_OFFBIG --enable-auth-basic="LDAP
NCSA" --enable-digest-auth-helpers=password
--enable-external-acl-helpers="ldap_group ip_user" --enable-eui
--enable-ssl --with-openssl=/usr/sfw --with-large-files
LDFLAGS=-R/usr/sfw/lib
Solution :
$ cd src/ip
$ ls
Address.cc Intercept.h Qos.cci tools.cc
Address.h Intercept.lo QosConfig.cc tools.h
Address.lo Intercept.o QosConfig.h tools.lo
Address.o libip.la QosConfig.lo tools.o
forward.h Makefile QosConfig.o
Intercept.cc Makefile.am testAddress.cc
Intercept.cc.ref Makefile.in testAddress.h
With the following diff applied compilation is successfull
diff Intercept.cc Intercept.cc.ref
37c37
< #include "ip/tools.h" <<< OK
---
#include "src/tools.h"
Strange : no such change is needed to compile squid 3.3.4 with the same
configure options (may be default configure options are different
between 3.2.10 and 3.3.4 ?)
Yes there was a patch which should not have been ported to 3.2.
I am still in the process of trying to figure out why *all* the test
machines build Squid-3.2 just fine with this breakage.
Meanwhile, removing that line or using the latest daily snapshot which
has the patch removed, will both successfully build 3.2.
Sorry for the issues this is causing.
Amos