Package: linux-libc-dev-armhf-cross
Version: 4.1.6-1cross1
Severity: important

Hi. I'm trying to cross-build a simple userspace application that uses
the i2c bus. This does

  #include <linux/i2c-dev.h>

When building natively, this works fine. The #include pulls in

  /usr/include/linux/i2c-dev.h

There's a diversion involved, and it looks like this:

  $ dpkg -S /usr/include/linux/i2c-dev.h

  diversion by libi2c-dev from: /usr/include/linux/i2c-dev.h
  diversion by libi2c-dev to: /usr/include/linux/i2c-dev.h.kernel
  linux-libc-dev:amd64, libi2c-dev, linux-libc-dev:armhf: 
/usr/include/linux/i2c-dev.h

linux-libc-dev-armhf-cross puts a copy of this header into a different
directory, thus bypassing the diversion. Thus cross-building the
application instead #includes

  /usr/arm-linux-gnueabihf/include/linux/i2c-dev.h

This file is missing critical chunks, which the diversion took care of.
So with the -cross business you can't cross build i2c applications. Is
it required to ship the arm-specific i2c-dev.h file at all? It is
identical to the non-arm-specific diverted one.



-- System Information:
Debian Release: 8.0
  APT prefers unstable
  APT policy: (800, 'unstable'), (700, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: armhf, armel, i386

Kernel: Linux 4.0.0-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) (ignored: LC_ALL set to C)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

-- no debconf information

Reply via email to