[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#638418: gcc-multilib: needs to ensure that /usr/include/asm is a symlink

Package: gcc-multilib
Version: 4:4.6.1-2
Severity: serious

I've been tearing my hair out WTF this suddenly happened:

| $ echo '#include <errno.h>' > junk.c
| $ gcc -m64 -c junk.c
| In file included from /usr/include/bits/errno.h:25:0,
|                  from /usr/include/errno.h:36,
|                  from junk.c:1:
| /usr/include/linux/errno.h:4:23: fatal error: asm/errno.h: No such file or directory

It turns out that /usr/include/asm is an empty directory and not a
symlink to i386-linux-gnu/asm as shipped in the package.  And
linux-libc-dev has only recently switched to multiarch paths and dropped
the /usr/include/asm directory:

| linux-2.6 (3.0.0-2) unstable; urgency=high
| [...]
|   [ Ben Hutchings ]
|   * linux-libc-dev: Install include/asm under arch-specific directory
|     (thanks to Aurelien for correcting the directory); mark package as
|     multi-arch-coinstallable (Multi-Arch: same)

Possible solution: depend on linux-libc-dev (>= 3.0.0-2) on Linux
architectures and ship a postinst that converts /usr/include/asm into a
symlink if it's still a directory.

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (101, 'experimental')
Architecture: i386 (x86_64)

Kernel: Linux 3.0.3-nouveau (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages gcc-multilib depends on:
ii  cpp                           4:4.6.1-2  GNU C preprocessor (cpp)
ii  gcc                           4:4.6.1-2  GNU C compiler
ii  gcc-4.6-multilib              4.6.1-7    GNU C compiler (multilib files)

gcc-multilib recommends no packages.

gcc-multilib suggests no packages.

-- no debconf information

-- debsums errors found:
debsums: no md5sums for gcc-multilib

Reply to: