On Mon, 15 Mar 2010 21:54:17 +0100, Henrik Nordström <[email protected]> wrote: > mån 2010-03-15 klockan 20:28 +0100 skrev Luigi Gangitano: >> I've got the same on Debian unstable with 3.1.0.17 and 3.1.0.18. >> >> g++ -DHAVE_CONFIG_H -DDEFAULT_CONFIG_FILE=\"/etc/squid3/squid.conf\" >> -DDEFAULT_SQUID_DATA_DIR=\"/usr/share/squid3\" >> -DDEFAULT_SQUID_CONFIG_DIR=\"/etc/squid3\" -I.. -I../include -I../src >> -I../include -I/usr/include -I../src -I/usr/include/libxml2 >> -I/usr/include/libxml2 -Wall -Wpointer-arith -Wwrite-strings -Wcomments >> -Werror -D_REENTRANT -m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g >> -O2 -g -Wall -O2 -c -o globals.o globals.cc >> /bin/sh ../libtool --tag=CXX --mode=link g++ -I/usr/include/libxml2 >> -Wall -Wpointer-arith -Wwrite-strings -Wcomments -Werror -D_REENTRANT >> -m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -g -Wall -O2 -m32 >> -g -o ufsdump cbdata.o debug.o int.o mem.o MemBuf.o store_key_md5.o >> StoreMeta.o StoreMetaMD5.o StoreMetaSTD.o StoreMetaSTDLFS.o >> StoreMetaUnpacker.o StoreMetaURL.o StoreMetaVary.o String.o time.o >> ufsdump.o dlink.o HttpRequestMethod.o RemovalPolicy.o tests/stub_fd.o >> globals.o base/libbase.la libsquid.la auth/libacls.la ident/libident.la >> acl/libacls.la acl/libstate.la auth/libauth.la acl/libapi.la ip/libip.la >> fs/libfs.la repl/liblru.a repl/libheap.a -lcrypt ../snmplib/libsnmp.a
>> -L../lib -lmiscutil -lm -lnsl -lcap >> g++ -I/usr/include/libxml2 -Wall -Wpointer-arith -Wwrite-strings >> -Wcomments -Werror -D_REENTRANT -m32 -D_LARGEFILE_SOURCE >> -D_FILE_OFFSET_BITS=64 -g -O2 -g -Wall -O2 -m32 -g -o ufsdump cbdata.o >> debug.o int.o mem.o MemBuf.o store_key_md5.o StoreMeta.o StoreMetaMD5.o >> StoreMetaSTD.o StoreMetaSTDLFS.o StoreMetaUnpacker.o StoreMetaURL.o >> StoreMetaVary.o String.o time.o ufsdump.o dlink.o HttpRequestMethod.o >> RemovalPolicy.o tests/stub_fd.o globals.o base/.libs/libbase.a >> ./.libs/libsquid.a auth/.libs/libacls.a ident/.libs/libident.a >> acl/.libs/libacls.a acl/.libs/libstate.a auth/.libs/libauth.a >> acl/.libs/libapi.a ip/.libs/libip.a fs/.libs/libfs.a repl/liblru.a >> repl/libheap.a -lcrypt ../snmplib/libsnmp.a >> -L/home/luigi/debian/squid3/build-area/squid3-3.1.0.18/lib -lmiscutil -lm >> -lnsl -lcap >> ./.libs/libsquid.a(comm.o): In function `CommIO::NULLFDHandler(int, >> void*)': >> /home/luigi/debian/squid3/build-area/squid3-3.1.0.18/src/comm.cc:2399: >> undefined reference to `commSetSelect' > >> Any idea on how to fix it? > > Sent a patch some week ago (7/3) to disable building of ufsdump until > these linking issues can be properly addressed. > > The issue have been identified, or actually two separate issues. What is > yet unclear is what is the proper solution.. > > - Inline operator overloading causing indeterministic linkage, > resulting in seemingly unneeded sub modules being pulled in "at random". > > - The current Squid libraries have very unclear dependencies with no > clean boundaries, resulting in linking failure when the above happens.. > > Regards > Henrik That patch is still waiting on you to commit. I've +1 FWIW. Amos
