← Back to team overview

enterprise-support team mailing list archive

[Bug 1496223] [NEW] squid3 FTBFS due to linux-libc-dev and libc6-dev headers mismatch

 

Public bug reported:

Note: currently squid3 fails due to libecap3-dev dependency, this is
easily fixed by going back to libecap2-dev (only squid 3.5+ will build
with libecap3-dev [1]).

After libecap2-dev dependency fix, squid then fails due to "logical-not-
parentheses".

g++ -DHAVE_CONFIG_H  -I../.. -I../../include -I../../lib -I../../src -I../../include  -isystem /usr
/include/mit-krb5 -isystem /usr/include/mit-krb5  -I.  -I/usr/include/libxml2 -D_FORTIFY_SOURCE=2 -
isystem /usr/include/mit-krb5 -isystem /usr/include/mit-krb5 -I/usr/include/libxml2 -Wall -Wpointer
-arith -Wwrite-strings -Wcomments -Werror -pipe -D_REENTRANT -m64 -g -O2 -fPIE -fstack-protector-st
rong -Wformat -Werror=format-security -std=c++0x -c -o lru/store_repl_lru.o lru/store_repl_lru.cc
heap/store_repl_heap.cc: In function 'StoreEntry* heap_purgeNext(RemovalPurgeWalker*)':
heap/store_repl_heap.cc:224:36: error: logical not is only applied to the left hand side of compari
son [-Werror=logical-not-parentheses]
     if (!heap_nodes(heap->theHeap) > 0)
                                    ^

Fixing that, it then fails due to mismatching headers between linux-
libc-dev_4.2.0-10.11 and libc6-dev_2.21-0ubuntu4.

In file included from /usr/include/linux/netfilter.h:7:0,
                 from /usr/include/linux/netfilter_ipv4.h:8,
                 from Intercept.cc:99:
/usr/include/linux/in.h:28:16: error: redeclaration of 'IPPROTO_IP'
   IPPROTO_IP = 0,  /* Dummy protocol for TCP  */
                ^
In file included from /usr/include/arpa/inet.h:22:0,
                 from ../../include/util.h:42,
                 from ../../include/Array.h:39,
                 from ../../src/comm/forward.h:4,
                 from ../../src/comm/Connection.h:40,
                 from Intercept.cc:34:
/usr/include/netinet/in.h:42:5: note: previous declaration '<anonymous enum> IPPROTO_IP'
     IPPROTO_IP = 0,    /* Dummy protocol for TCP.  */
     ^
In file included from /usr/include/linux/netfilter.h:7:0,
                 from /usr/include/linux/netfilter_ipv4.h:8,
                 from Intercept.cc:99:
/usr/include/linux/in.h:30:18: error: redeclaration of 'IPPROTO_ICMP'
   IPPROTO_ICMP = 1,  /* Internet Control Message Protocol */
                  ^
In file included from /usr/include/arpa/inet.h:22:0,
                 from ../../include/util.h:42,
                 from ../../include/Array.h:39,
                 from ../../src/comm/forward.h:4,
                 from ../../src/comm/Connection.h:40,
                 from Intercept.cc:34:
/usr/include/netinet/in.h:44:5: note: previous declaration '<anonymous enum> IPPROTO_ICMP'
     IPPROTO_ICMP = 1,    /* Internet Control Message Protocol.  */
     ^
<snip>

Tried to ignore "#include linux/netfilter.h" in src/ip/Intercept.cc:99
to no avail as build fails later on due to missing "SO_ORIGINAL_DST" in
Intercept.cc. Removing arpa and netinet header inclusions also lead to
eventual build failures due to missing symbols.

So far I have found no way to have squid linking solely to either the
kernel or libc without disabling netfilter altogether.

[1] http://wiki.squid-
cache.org/ConfigExamples/ContentAdaptation/eCAP#Build_eCAP_library

** Affects: squid3 (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: ftbfs

-- 
You received this bug notification because you are a member of Ubuntu
Server/Client Support Team, which is subscribed to squid3 in Ubuntu.
Matching subscriptions: Ubuntu Server/Client Support Team
https://bugs.launchpad.net/bugs/1496223

Title:
  squid3 FTBFS due to linux-libc-dev and libc6-dev headers mismatch

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/squid3/+bug/1496223/+subscriptions


Follow ups