[Buildroot] [PATCH] python-netifaces: add -x option to fix cross-compilation
Yegor Yefremov
yegor_sub1 at visionsystems.de
Mon Jan 9 09:57:23 UTC 2012
Am 09.01.2012 09:18, schrieb Peter Korsgaard:
>>>>>> "yegorslists" == yegorslists <yegorslists at googlemail.com> writes:
>
> Hi,
>
> yegorslists> From: Yegor Yefremov <yegorslists at googlemail.com>
> yegorslists> Signed-off-by: Yegor Yefremov <yegorslists at googlemail.com>
> yegorslists> ---
> yegorslists> package/python-netifaces/python-netifaces.mk | 2 +-
> yegorslists> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> yegorslists> diff --git a/package/python-netifaces/python-netifaces.mk b/package/python-netifaces/python-netifaces.mk
> yegorslists> index e9a7099..5bfa326 100644
> yegorslists> --- a/package/python-netifaces/python-netifaces.mk
> yegorslists> +++ b/package/python-netifaces/python-netifaces.mk
> yegorslists> @@ -14,7 +14,7 @@ define PYTHON_NETIFACES_BUILD_CMDS
> yegorslists> (cd $(@D); \
> yegorslists> PYTHONXCPREFIX="$(STAGING_DIR)/usr/" \
> yegorslists> LDFLAGS="-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib" \
> yegorslists> - $(HOST_DIR)/usr/bin/python setup.py build)
> yegorslists> + $(HOST_DIR)/usr/bin/python setup.py build -x)
> yegorslists> endef
>
> Thanks, so far so good, but it still doesn't build here:
>
> building 'netifaces' extension
> /home/peko/source/buildroot/output/host/usr/bin/arm-linux-gcc -fno-strict-aliasing -pipe -Os -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DHAVE_GETNAMEINFO=1 -DHAVE_SIOCGIFCONF=1 -DHAVE_SIOCGIFHWADDR=1 -DHAVE_SIOCGIFADDR=1 -DHAVE_SIOCGIFFLAGS=1 -DHAVE_SIOCGIFDSTADDR=1 -DHAVE_SIOCGIFBRDADDR=1 -DHAVE_SIOCGIFNETMASK=1 -DHAVE_SOCKET_IOCTLS=1 -DHAVE_NETAX25_AX25_H=1 -DHAVE_NETECONET_EC_H=1 -DHAVE_NETIPX_IPX_H=1 -DHAVE_NETPACKET_PACKET_H=1 -DHAVE_LINUX_IRDA_H=1 -DHAVE_LINUX_ATM_H=1 -DHAVE_LINUX_LLC_H=1 -DHAVE_LINUX_TIPC_H=1 -DHAVE_LINUX_DN_H=1 -DHAVE_SOCKADDR_AX25=1 -DHAVE_SOCKADDR_IN=1 -DHAVE_SOCKADDR_IN6=1 -DHAVE_SOCKADDR_IPX=1 -DHAVE_SOCKADDR_UN=1 -DHAVE_SOCKADDR_EC=1 -DHAVE_SOCKADDR_LL=1 -DHAVE_SOCKADDR_ATMPVC=1 -DHAVE_SOCKADDR_ATMSVC=1 -DHAVE_SOCKADDR_DN=1 -DHAVE_SOCKADDR_IRDA=1 -DHAVE_SOCKADDR_LLC=1 -I/home/peko/source/buildroot/output/host/usr/arm-unknown-linux-uclibcgnueabi/sysroot/usr/include/python2.7 -c netifaces.c -o build/temp.linux-x86_64-2.7/netifaces.
o
> netifaces.c: In function 'ifaddrs':
> netifaces.c:627: error: invalid type argument of '->' (have 'struct ifreq')
> netifaces.c:637: error: expected ';' before 'do'
>
>
> Where netifaces.c:627 is:
>
> if (string_from_sockaddr (ifr->CNAME(ifr_addr), buffer, sizeof (buffer)) == 0) {
>
> and netifaces.c:637 is:
>
> Py_XDECREF (dict);
> Py_XDECREF (list)
> Py_XDECREF (family);
>
> What kind of toolchain configuration are you using?
>
> I also notice that it detects HAVE_SOCKADDR_IN6 even though my config
> doesn't have IPv6 support, which might be a problem.
That's really strange. I used CodeSourcery toolchain and had no problems, but with native BR toolchain I have the same behavior as yours. I'll look into this issue.
Yegor
More information about the buildroot
mailing list