Re: [squid-users] Compiling squid 3.0 on AIX

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Tue, 20 Oct 2009 23:54:43 +1300

Perry Smith wrote:
> Hi,
>
> I'm trying to build squid 3.0 on AIX 5.3 using GCC 4.3.1. It appears to
> forget to build many files. One example is src/cbdata.o

Code related issues to squid-dev mailing list please. CC'd at a minimum.

Anything that can be fed back into mainline for this is good.

>
> My link fails with:
>
> g++ -Werror -Wall -Wpointer-arith -Wwrite-strings -Wcomments -g -O2 -g
> -o cf_gen cf_gen.o debug.o time.o globals.o ./.libs/libsquid.a
> ./.libs/libauth.a -L/usr/local/lib -lstdc++ -L/usr/local/build/squid-3.0.S
> TABLE19/lib -lmiscutil -lm -lbind -lnsl
> -Wl,-blibpath:/usr/local/lib:/usr/local/lib/gcc/powerpc-ibm-aix5.3.0.0/4.3.1:/usr/local/lib/gcc/powerpc-ibm-aix5.3.0.0/4.3.1/../../..:/usr/lib:/lib
>
> ld: 0711-317 ERROR: Undefined symbol: .cbdataInternalLock(void const*)
> ld: 0711-317 ERROR: Undefined symbol: .cbdataInternalUnlock(void const*)
> ld: 0711-317 ERROR: Undefined symbol: .cbdataInternalFree(void*)
> ld: 0711-317 ERROR: Undefined symbol: .cbdataReferenceValid(void const*)
> ld: 0711-317 ERROR: Undefined symbol:
> .cbdataInternalAddType(cbdata_type, char const*, int, void (*)(void*))
> ld: 0711-317 ERROR: Undefined symbol: .cbdataInternalAlloc(cbdata_type)
> ld: 0711-317 ERROR: Undefined symbol: .eventAdd(char const*, void
> (*)(void*), void*, double, int, bool)
> ld: 0711-317 ERROR: Undefined symbol: .commSetSelect
> ld: 0711-317 ERROR: Undefined symbol: .fd_close
> ld: 0711-317 ERROR: Undefined symbol: .fd_open
> ld: 0711-317 ERROR: Undefined symbol: .ipcache_nbgethostbyname
> ld: 0711-317 ERROR: Undefined symbol: .dlinkDelete
> ld: 0711-317 ERROR: Undefined symbol: .dlinkAddTail
> ld: 0711-317 ERROR: Undefined symbol: .fatalf
> ld: 0711-317 ERROR: Undefined symbol: .MemBuf::freeFunc()
> ld: 0711-317 ERROR: Undefined symbol:
> .cbdataInternalReferenceDoneValid(void**, void**)
> ld: 0711-317 ERROR: Undefined symbol: .fd_bytes
> ld: 0711-317 ERROR: Undefined symbol: .fdNFree
> ld: 0711-317 ERROR: Undefined symbol: .PconnPool::count(int)
> ld: 0711-317 ERROR: Undefined symbol: .comm_select
> ld: 0711-317 ERROR: Undefined symbol: .fatal_dump
> ld: 0711-317 ERROR: Undefined symbol: .fdAdjustReserved
> ld: 0711-317 ERROR: Undefined symbol: .commResetSelect
> ld: 0711-317 ERROR: Undefined symbol: .ipcacheMarkBadAddr
> ld: 0711-317 ERROR: Undefined symbol: .ipcacheMarkGoodAddr
> ld: 0711-317 ERROR: Undefined symbol: .netdbDeleteAddrNetwork
> ld: 0711-317 ERROR: Undefined symbol: .ipcacheCycleAddr
> ld: 0711-317 ERROR: Undefined symbol: .fatal
> ld: 0711-317 ERROR: Undefined symbol:
> .AuthUserHashPointer::AuthUserHashPointer(AuthUser*)
> ld: 0711-317 ERROR: Undefined symbol: .AuthUserHashPointer::user() const
> ld: 0711-317 ERROR: Undefined symbol: .aclCacheMatchFlush
> ld: 0711-317 ERROR: Undefined symbol: .dlinkNodeDelete
> ld: 0711-317 ERROR: Undefined symbol: .authenticateAuthUserInuse(AuthUser*)
> ld: 0711-317 ERROR: Undefined symbol: .HttpHeader::getStr(http_hdr_type)
> const
> ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
> information.
>
> If I compile src/cbdata by hand and add it to the link line, the first
> few symbols become defined. It appears as if many files (cbdata being
> one of them) are not being compiled at all.
>
> Often with AIX, that can be caused by AIX's sed. I am using GNU's sed
> and GNU's make. And GNU's bash to process the configure.
>
> I'm fairly good at tracking this sort of thing down but I thought I
> would ask for any suggestions first.

Looks a lot like the automake automatic dependencies failing to be done
properly.

libsquid.a pulls in an unfortunately large amount or dependencies and is
not strictly needed anyway. Looks like libtool usually strips it out of
the link.

On a slightly related note, are you aware of any official package for
AIX squid or squid-3 I can plunder for patches? this may be a known
issue to the maintainer (if any).

PS. we are looking for more OS to become build testers:
http://wiki.squid-cache.org/BuildFarm :)

Amos
(Squid-3 maintainer)

-- 
Please be using
   Current Stable Squid 2.7.STABLE7 or 3.0.STABLE19
   Current Beta Squid 3.1.0.14
Received on Tue Oct 20 2009 - 10:54:50 MDT

This archive was generated by hypermail 2.2.0 : Tue Oct 20 2009 - 12:00:03 MDT