From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/604 Path: news.gmane.org!not-for-mail From: Rich Felker Newsgroups: gmane.linux.lib.musl.general Subject: C++ support! Date: Thu, 1 Mar 2012 00:10:00 -0500 Message-ID: <20120301051000.GA580@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1330578656 780 80.91.229.3 (1 Mar 2012 05:10:56 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 1 Mar 2012 05:10:56 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-605-gllmg-musl=m.gmane.org@lists.openwall.com Thu Mar 01 06:10:55 2012 Return-path: Envelope-to: gllmg-musl@plane.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1S2yI2-0001v6-PM for gllmg-musl@plane.gmane.org; Thu, 01 Mar 2012 06:10:54 +0100 Original-Received: (qmail 6137 invoked by uid 550); 1 Mar 2012 05:10:53 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 6125 invoked from network); 1 Mar 2012 05:10:53 -0000 Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) Xref: news.gmane.org gmane.linux.lib.musl.general:604 Archived-At: Hi all, I'm pleased to announce that musl is now (as of current git) able to support C++ programs. I've just built gcc 4.6.2 with C++ support, including shared libgcc_s.so and libstdc++.so, and everything seems to work as expected. In order to get libstdc++ to build, the config/os/gnu-linux directory needs to be removed and replaced with a symlink to (or copy of) the contents of config/os/generic. This is to remove the glibc-locale-specific bit-peeking hacks that depend on glibc's implementation of ctype.h. You may also encounter the libstdc++ configure script complaining that it cannot run programs produced by the newly-build gcc compiler. This can be worked around by convincing the build process that you're building a cross-compiler or by adding the in-build-tree path to libgcc_s.so.1 to the LD_LIBRARY_PATH. I have not tried building any major C++ software, only trivial test programs, so I would welcome reports on whether real-world programs work as expected. Rich