--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: gcc-6: please make -mmusl return an error instead of doing the wrong thing
- From: Adam Borowski <kilobyte@angband.pl>
- Date: Sun, 08 May 2016 22:40:37 +0200
- Message-id: <146274003751.5409.4971877972293867600.reportbug@umbar.angband.pl>
Package: gcc-6
Version: 6.1.1-1
Severity: wishlist
Hi!
Upstream added a new option, -mmusl that's supposed to use musl instead of glibc.
However, our current build in Debian instead silently almost ignores it ("almost"
as it has a small but unsufficient effect):
[/tmp]$ gcc-6 -Wall -mmusl hello.c
[/tmp]$ ldd a.out
linux-vdso.so.1 (0x00007ffe34997000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ff387f4c000)
/lib/ld-musl-x86_64.so.1 => /lib64/ld-linux-x86-64.so.2 (0x0000555ba16a0000)
[/tmp]$ gcc-6 -Wall -mmusl -static -s hello.c
[/tmp]$ ls -al a.out
-rwxr-xr-x 1 kilobyte kilobyte 738648 May 8 21:59 a.out
As discussed on IRC:
22:21 < helmut> kilobyte: I think -mmusl is a road to sadness. Please use
x86_64-linux-musl-gcc-6 instead.
22:21 < waldi> "mmusl"?
22:22 < helmut> waldi: #823769
22:22 < kilobyte> helmut: hmm right, for the same reason multilib sucks, I
guess
22:22 -zwiebelbot:#debian-devel- Debian#823769: please support the musl c
library for cross compiler builds - https://bugs.debian.org/823769
22:22 < helmut> kilobyte: exactly
22:23 < helmut> kilobyte: precisely for that reason, I will put zero effort
into supporting -mmusl. It's just wrong.
22:25 < kilobyte> I guess it should then return an error message instead of
silently using glibc
Thus, if you're not going to support it, please make it fail noisily.
Of course, exec("x86_64-linux-musl-gcc-6") or complaining if it's not installed
is an option, too.
-- System Information:
Debian Release: stretch/sid
APT prefers unstable
APT policy: (500, 'unstable'), (150, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.6.0-rc6-debug2+ (SMP w/6 CPU cores)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
Versions of packages gcc-6 depends on:
ii binutils 2.26-8
ii cpp-6 6.1.1-1
ii gcc-6-base 6.1.1-1
ii libc6 2.22-7
ii libcc1-0 6.1.1-1
ii libgcc-6-dev 6.1.1-1
ii libgcc1 1:6.1.1-1
ii libgmp10 2:6.1.0+dfsg-2
ii libisl15 0.16.1-1
ii libmpc3 1.0.3-1
ii libmpfr4 3.1.4-1
ii libstdc++6 6.1.1-1
ii zlib1g 1:1.2.8.dfsg-2+b1
Versions of packages gcc-6 recommends:
ii libc6-dev 2.22-7
Versions of packages gcc-6 suggests:
ii gcc-6-doc 6.1.0-1
pn gcc-6-locales <none>
pn gcc-6-multilib <none>
pn libasan3-dbg <none>
pn libatomic1-dbg <none>
pn libcilkrts5-dbg <none>
pn libgcc1-dbg <none>
pn libgomp1-dbg <none>
pn libitm1-dbg <none>
pn liblsan0-dbg <none>
pn libmpx2-dbg <none>
pn libquadmath0-dbg <none>
pn libtsan0-dbg <none>
pn libubsan0-dbg <none>
-- no debconf information
--- End Message ---