Re: [squid-users] Error making squid-3.1.0.7-20090412 on Mac OS X 10.4

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Mon, 13 Apr 2009 12:55:27 +1200

Thank you for the report.

Beta release code problems only to squid-dev_at_squid-cache.org or bugzilla
in future please. CC'd squid-dev for now.

vollkommen_at_gmx.net wrote:
> I'm running into the following error(s) making squid-3.1.0.7-20090412 on Mac OS X 10.4.11 with gcc 4.0.1. Is there any workaround for that?
>
> ...
> mkdir .libs
> g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I../.. -I../../include -I../../src -I../../include -I/usr/include/libxml2 -Werror -Wall -Wpointer-arith -Wwrite-strings -Wcomments -D_REENTRANT -g -O2 -MT AsyncJob.lo -MD -MP -MF .deps/AsyncJob.Tpo -c AsyncJob.cc -fno-common -DPIC -o .libs/AsyncJob.o
> g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I../.. -I../../include -I../../src -I../../include -I/usr/include/libxml2 -Werror -Wall -Wpointer-arith -Wwrite-strings -Wcomments -D_REENTRANT -g -O2 -MT AsyncJob.lo -MD -MP -MF .deps/AsyncJob.Tpo -c AsyncJob.cc -o AsyncJob.o >/dev/null 2>&1
> /bin/sh ../../libtool --tag=CXX --mode=link g++ -Werror -Wall -Wpointer-arith -Wwrite-strings -Wcomments -D_REENTRANT -g -O2 -g -o libbase.la AsyncJob.lo
> ar cru .libs/libbase.a .libs/AsyncJob.o
> ranlib .libs/libbase.a
> creating libbase.la
> (cd .libs && rm -f libbase.la && ln -s ../libbase.la libbase.la)
> Making all in acl
> if /bin/sh ../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I../.. -I../../include -I../../src -I../../include -I/usr/include/libxml2 -Werror -Wall -Wpointer-arith -Wwrite-strings -Wcomments -D_REENTRANT -g -O2 -MT Acl.lo -MD -MP -MF ".deps/Acl.Tpo" -c -o Acl.lo Acl.cc; \
> then mv -f ".deps/Acl.Tpo" ".deps/Acl.Plo"; else rm -f ".deps/Acl.Tpo"; exit 1; fi
> mkdir .libs
> g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I../.. -I../../include -I../../src -I../../include -I/usr/include/libxml2 -Werror -Wall -Wpointer-arith -Wwrite-strings -Wcomments -D_REENTRANT -g -O2 -MT Acl.lo -MD -MP -MF .deps/Acl.Tpo -c Acl.cc -fno-common -DPIC -o .libs/Acl.o
> ../../include/fatal.h:7: error: expected initializer before 'PRINTF_FORMAT_ARG1'
> ../../include/SquidNew.h: In function 'void* operator new(size_t)':
> /usr/include/c++/4.0.0/new:84: error: previous declaration of 'void* operator new(size_t)' with 'C++' linkage
> ../../include/SquidNew.h:46: error: conflicts with new declaration with 'C' linkage
> ../../include/SquidNew.h: In function 'void operator delete(void*)':
> /usr/include/c++/4.0.0/new:86: error: previous declaration of 'void operator delete(void*)' with 'C++' linkage
> ../../include/SquidNew.h:50: error: conflicts with new declaration with 'C' linkage
> ../../include/SquidNew.h: In function 'void* operator new [](size_t)':
> /usr/include/c++/4.0.0/new:85: error: previous declaration of 'void* operator new [](size_t)' with 'C++' linkage
> ../../include/SquidNew.h:54: error: conflicts with new declaration with 'C' linkag
> .....
> (snipped)

More likely to be a patch to fix this type of problem.

Something appears to be causing all the Squid C++ code to be either
built or symbolized as C.

Can you resend just to squid-dev with the full trace please?

> .....
> /usr/include/c++/4.0.0/iomanip:251: error: template with C linkage
> /usr/include/c++/4.0.0/iomanip:259: error: template with C linkage
> ../../include/Stack.h:45: error: template with C linkage
> ../../include/splay.h:15: error: template with C linkage
> ../../include/splay.h:40: error: template with C linkage
> ../../include/splay.h:47: error: template with C linkage
> ../../include/splay.h:51: error: template with C linkage
> ../../include/splay.h:55: error: template with C linkage
> ../../include/splay.h:67: error: template with C linkage
> ../../src/ip/IpAddress.h: In function 'std::ostream& operator<<(std::ostream&, const IpAddress&)':
> ../../src/ip/IpAddress.h:416: error: declaration of C function 'std::ostream& operator<<(std::ostream&, const IpAddress&)' conflicts with
> ../../src/Debug.h:111: error: previous declaration 'std::ostream& operator<<(std::ostream&, uint8_t)' here
> ../../include/RefCount.h: At global scope:
> ../../include/RefCount.h:43: error: template with C linkage
> ../../include/RefCount.h:143: error: template with C linkage
> ../../include/Range.h:44: error: template with C linkage
> ../../include/Range.h:57: error: template with C linkage
> ../../src/Packer.h:65: error: expected initializer before 'PRINTF_FORMAT_ARG2'
> ../../src/SquidString.h:181: error: declaration of C function 'std::ostream& operator<<(std::ostream&, const String&)' conflicts with
> ../../src/ip/IpAddress.h:416: error: previous declaration 'std::ostream& operator<<(std::ostream&, const IpAddress&)' here
> ../../src/structs.h:112: error: 'regex_t' does not name a type
> ../../src/structs.h:1073: error: 'regex_t' does not name a type
> ../../src/protos.h:104: error: expected initializer before 'PRINTF_FORMAT_ARG1'
> ../../src/protos.h:116: error: template with C linkage
> ../../src/protos.h:271: error: expected initializer before 'PRINTF_FORMAT_ARG3'
> ../../src/protos.h:562: error: expected initializer before 'PRINTF_FORMAT_ARG1'
> ../../src/protos.h:711: error: expected initializer before 'PRINTF_FORMAT_ARG2'
> ../../src/squid.h:334: error: template with C linkage
> ../../src/cbdata.h:449: error: template with C linkage
> ../../src/acl/Data.h:41: error: template with C linkage
> ../../src/acl/Strategy.h:45: error: template with C linkage
> ../../src/acl/Strategised.h:45: error: template with C linkage
> Acl.cc: In static member function 'static void ACL::ParseAclLine(ConfigParser&, ACL**)':
> Acl.cc:169: error: 'fatalf' was not declared in this scope
> Acl.cc: In member function 'void ACL::Prototype::registerMe()':
> Acl.cc:377: error: 'fatalf' was not declared in this scope
> /usr/include/c++/4.0.0/ostream: In member function 'std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::operator<<(int) [with _CharT = char, _Traits = std::char_traits<char>]':
> ../../src/Debug.h:113: instantiated from here
> /usr/include/c++/4.0.0/ostream:193: error: invalid conversion from 'int' to 'std::_Ios_Fmtflags'
> make[3]: *** [Acl.lo] Error 1
> make[2]: *** [all-recursive] Error 1
> make[1]: *** [all] Error 2
> make: *** [all-recursive] Error 1
>
>
> Here's some environmental info:
>
> i686-apple-darwin8-gcc-4.0.1
> gcc version 4.0.1 (Apple Computer, Inc. build 5370)
>
> ./configure --disable-ident-lookups --enable-filters --enable-snmp --enable-ipv6 --enable-delay-pools --enable-ssl --enable-auth=digest,basic --enable-digest-auth-helpers=password --enable-basic-auth-helpers=PAM,NCSA,LDAP --enable-async-io --build=i686-apple-darwin

Amos

-- 
Please be using
   Current Stable Squid 2.7.STABLE6 or 3.0.STABLE14
   Current Beta Squid 3.1.0.7
Received on Sun Apr 12 2009 - 23:55:31 MDT

This archive was generated by hypermail 2.2.0 : Mon Apr 13 2009 - 12:00:01 MDT