From: Rich Felker <dalias@aerifal.cx>
To: musl@lists.openwall.com
Subject: C++ ABI compatibility and musl-gcc
Date: Wed, 24 Jul 2013 19:21:41 -0400 [thread overview]
Message-ID: <20130724232141.GA6531@brightrain.aerifal.cx> (raw)
I've just committed the last of a series of changes that make it
possible to load the glibc-built libstdc++.so.6 under musl. While it
may look like a bit of ugliness, roughly half of the changes were
needed anyway to lay the ground for future locale support; the
long-term goal is to support customizable LC_TIME, LC_MONETARY,
LC_COLLATE, and LC_MESSAGES, but I don't expect any of that to happen
until after the 1.0 release.
Anyway, back to musl-gcc. My hope was that supporting the glibc
libstdc++ would make it possible to use musl-gcc to compile C++ code,
which could in turn be useful for bootstrapping compilers written in
C++ (gcc 4.8 or clang/LLVM). However, it seems the installed C++
headers are also full of glibc-header-specific assumptions, so using
musl-gcc for C++ is not as easy as I'd hoped it might be.
I''ve already spent a great deal of time and effort onthis C++ ABI
topic and would rather focus on release prep and other issues for a
while now. But perhaps someone interested in this topic could do some
research and see if the idea of using musl-gcc for C++ can be
salvaged. Here are some possible approaches:
1. Figuring out what's wrong with the headers and working around it.
Or, in other words:
<chris2> lets write a musl-fixincludes :P
2. Determining if the C++ headers that result from building a
musl-targetted libstdc++ are clean and arch-agnostic, and if so,
just packaging them up in a tarball that users could download and
install.
Whichever approach is taken, if we get this working there should be a
doc on the wiki explaining what to do. This would include not only
dealing with the header issue, but also things like copying
libstdc++.so.6 into $(prefix)/lib or similar.
By the way, merely running existing C++ apps linked against glibc IS
possible under musl now, and it should work with either the original
glibc libstdc++.so.6 or the (new, post-ABI-fixes) musl libstdc++.so.6.
Rich
next reply other threads:[~2013-07-24 23:21 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-24 23:21 Rich Felker [this message]
2013-07-27 6:04 ` Rob Landley
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130724232141.GA6531@brightrain.aerifal.cx \
--to=dalias@aerifal.cx \
--cc=musl@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).