Cross compile fails because -I/usr/include is added to CFLAGS, which makes the wrong headers included (build machine versus host machine). This is caused when the USE flag pcre is enabled, causing PCRE=1 to be passed to the make command line. When PCRE=1, the Makefile adds -I$(PCREDIR)/usr/include to CFLAGS. But the ebuild does not define PCREDIR, so -I/usr/include is the result. I patched the ebuild to fix this as follows: when USE contains pcre, add both of the following as arguments to make: PCRE=1 PCREDIR=${EROOT} The end result when cross-compiling is -I${SYSROOT}/usr/include, and everything compiles fine.
Created attachment 528980 [details] output of sudo armv7a-pip-linux-gnueabi-emerge --info
Created attachment 528982 [details] contents of /usr/armv7a-pip-linux-gnueabi/etc/portage/make.conf
Created attachment 528984 [details] build.log
Created attachment 528986 [details, diff] patched ebuild
Hey Joe, is this still an issue with a recent HAProxy version?
(In reply to Christian Ruppert (idl0r) from comment #5) > Hey Joe, > > is this still an issue with a recent HAProxy version? Sorry, I'm no longer using HAProxy and am no longer willing to dedicate any time to this issue.