On Mon, Aug 8, 2016 at 12:30 PM, Willy Tarreau <w...@1wt.eu> wrote: > Hi Baptiste, > > On Mon, Aug 08, 2016 at 12:21:54PM +0200, Baptiste wrote: > > Hi All, > > > > I test my HAProxy code in docker containers over alpine Linux and I can't > > build the haproxy -dev branch anymore... > > I have the following error: > > gcc -Iinclude -Iebtree -Wall -O0 -g -fno-strict-aliasing > > -Wdeclaration-after-statement -DCONFIG_HAP_LINUX_SPLICE -DTPROXY > > -DCONFIG_HAP_LINUX_TPROXY -DCONFIG_HAP_CRYPT -DUSE_ZLIB -DENABLE_POLL > > -DENABLE_EPOLL -DUSE_CPU_AFFINITY -DASSUME_SPLICE_WORKS -DUSE_ACCEPT4 > > -DNETFILTER -DUSE_GETSOCKNAME -DUSE_OPENSSL -DUSE_SYSCALL_FUTEX > -DUSE_PCRE > > -I/usr/include -DCONFIG_HAPROXY_VERSION=\"1.7-dev3-aa1ea8-87\" > > -DCONFIG_HAPROXY_DATE=\"2016/08/07\" -c -o src/proto_tcp.o > src/proto_tcp.c > > src/proto_tcp.c: In function 'get_tcp_info': > > src/proto_tcp.c:2329:18: error: storage size of 'info' isn't known > > struct tcp_info info; > > ^ > > src/proto_tcp.c:2329:18: warning: unused variable 'info' > [-Wunused-variable] > > Makefile:791: recipe for target 'src/proto_tcp.o' failed > > make: *** [src/proto_tcp.o] Error 1 > > It's embarrassing because it looks like your libc is missing this > definition though it properly has TCP_INFO defined. Let's hope it's > only a matter of adding an extra include. Could you please search > where it appears below /usr/include ? > > Willy >
Here you go: # fgrep -r tcp_info /usr/include/* /usr/include/linux/tcp.h:struct tcp_info { /usr/include/netinet/tcp.h:struct tcp_info It seems to be exactly the same that on my ubuntu 14.04. alpine linux natively use musl, an alternative libc library. I tried to install a "real" libc instead, with the same error as above (that said, I wonder how much my libc library was used or not, I'm investigating in that direction). Note that I don't have any problem compiling HAProxy 1.6-latest on the same OS. Baptiste