Bug#872891: gcc-multilib conflicts with GCC cross toolchains
Package: gcc-multilib
Version: 4:11.2.0-2
Followup-For: Bug #872891
Hi,
I also have been hit by this bug.
I'm using several cross-tool chains (arm-linux-gnueabi, mipsel-linux-gnu,
i686-linux-gnu) and I was wondering why using plain gcc with -m32 does
not work.
Perhaps due to the fact that gcc-i686-linux-gnu was installed, I successfully
compile a basic C program (the one given in this bug report) but the link
fails ("gcc -m32" was looking only in x86_64 directory to find gcc libs and
objects)
I first workaround this by looking at the LIBRARY_PATH of i686-linux-gnu-gcc
(adding "-v" when compiling to see the info), and I successfully link with
LIBRARY_PATH=...value_I_read... gcc -m32 file.o -o file
Digging a bit more, I saw that gcc-multilib is an empty package with
a few dependencies and lots of conflicts. Only one dependencies was missing
on my system: gcc-11-multilib
I tried to install it directly, the install succeeded (no conflicts for
gcc-11-multilib).
And then, I discovered that "gcc -m32" works for both compiling and linking.
So I'm really wondering why there are all these conflicts in gcc-multilib
(perhaps, I works on my system because I also have several *:i386 packages
installed, or perhaps it works 'by chance' mixing files from different packages
that should not...)
In anycase, for people that wish to have both cross chains and "gcc -m32"
working, manually installing the gcc-XX-multilib package for the current
compiler might be a solution.
Regards
Vincent
-- System Information:
Debian Release: bookworm/sid
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'oldstable-updates'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386, armel, mipsel
Kernel: Linux 5.14.0-4-amd64 (SMP w/4 CPU threads)
Kernel taint flags: TAINT_OOT_MODULE
Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages gcc-multilib depends on:
ii cpp 4:11.2.0-2
ii gcc 4:11.2.0-2
ii gcc-10-multilib 10.3.0-12
ii gcc-11-multilib 11.2.0-10
ii gcc-8-multilib 8.4.0-6
ii linux-libc-dev 5.14.16-1
gcc-multilib recommends no packages.
gcc-multilib suggests no packages.
Reply to: