Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Mon, 17 Jun 2019 20:28:12 -0700
From: Reinoud Koornstra <reinoudkoornstra@...il.com>
To: Rich Felker <dalias@...c.org>
Cc: musl@...ts.openwall.com
Subject: Re: where to find musl-gcc wrapper script

On Mon, Jun 17, 2019, 7:47 PM Rich Felker <dalias@...c.org> wrote:

> On Mon, Jun 17, 2019 at 07:30:00PM -0700, Reinoud Koornstra wrote:
> > Ok the wrapper is included in the musl library itself in the obj
> directory.
>
> Yes, or installed in $prefix/bin if you install. If you don't install
> it won't be able to find its spec file.
>
> > c++ isn't supported yet?
>
> Right. Nobody I'm aware of understands the details of this, but
> apparently either GCC's actual C++ headers or its "precompiled header"
> versions of them pull in a bunch of stuff from glibc, and then it
> breaks when you try to reuse them with musl. It's probably not that
> hard to figure out the root cause and maybe even make it work, but
> nobody has done it and interest is low because it's still a big hack
> compared to just building a proper cross toolchain.
>
> > Currently I configure with CC=musl-gcc
> > CFLAGS="-I/home/me/MUSL/include" LDFLAGS="-L/home/me/lib" ./configure
> > the final g++ comand also add -lrt, need more changes for this to work?
>
> If you do that you're compiling against musl's headers but then
> linking against glibc, which is going to make a huge broken mess.
>

Yes, I noticed, so how can I force it to link against musl as well?

>
> If you need C++, you really should just build a cross toolchain with
> musl-cross-make. It's as simple as clining the mcm repo and running
> "make TARGET=x86_64-linux-musl OUTPUT=/some/dir install" -- it will
> download, check hashes on, and patch all the components you need and
> give you a clean self-contained cross toolchain in the OUTPUT dir.
>

Also done that, in that case should I just use the compiled gcc as cc?

Thanks,

Reinoud.

>
> Rich
>
>
> > On Mon, Jun 17, 2019 at 5:54 PM Reinoud Koornstra
> > <reinoudkoornstra@...il.com> wrote:
> > >
> > > In this case, my application is simple, I need to compile and
> > > application against musl, instead of glibc.
> > > I do not need to musl compiled gcc for this?
> > > Thanks,
> > > Reinoud.
> > >
> > > On Mon, Jun 17, 2019 at 4:30 PM Rich Felker <dalias@...c.org> wrote:
> > > >
> > > > On Mon, Jun 17, 2019 at 03:49:19PM -0700, Reinoud Koornstra wrote:
> > > > > Hello Everyone,
> > > > > I did get the sources and build from musl-cross-gcc at github.com.
> > > > > Building works fine, however, I cannot find the musl-gcc script to
> compile.
> > > >
> > > > The musl-gcc wrapper script is for repurposing an existing host
> > > > toolchain for a different libc (glibc) to use it with musl. You don't
> > > > use it with a proper cross compiler toolchain or on a musl-native
> > > > system. The output of musl-cross-make will be a set of utilities
> > > > prefixed with the target tuple, e.g. x86_64-linux-musl-gcc, etc., in
> > > > the bin directory under wherever you installed the cross toolchain.
> > > >
> > > > Rich
>

Content of type "text/html" skipped

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.