Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20181125231955.GN23599@brightrain.aerifal.cx>
Date: Sun, 25 Nov 2018 18:19:55 -0500
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Subject: Re: ctype_base.h. Several errors "was not declared in this
 scope"

On Sat, Nov 24, 2018 at 10:42:19PM +0100, Daniel G. wrote:
> Hi all,
> I keep on trying to build a cross-compiler toolchain based in musl. I've
> left the idea of a multilib one due to conflicting types error (I wrote a
> few days ago about alltypes.h conflicting types for 'size_t').

This is likely due to multilib, which needs to be disabled. musl does
not do the gcc multilib model of using the same set of headers for
pairs of 32- and 64-bit archs that correspond to each other. If you
want both you need completely separate toolchains for each. Use
--disable-multilib.

> Now, also during the second pass of gcc, I've found three make errors. I've
> been able to patch two of them (one about the definition of PATH_MAX and
> another regarding __GLIBC_PREREQ).

This sounds like you're building gcc for a glibc target and not for
musl, but it's hard to know for sure with such a vague description.
Make sure you've specified x86_64-linux-musl (or whichever arch) on
the configure command line.

I'm confused why there's a second pass if you're building a cross
compiler, though. Multipass only makes sense for a native compiler.

> The third one seems to be more complicated, and affects the compilation of
> libstdc++-v3. At the end of the mail you can find a bunch of errors on variables not
> declared in the scope.

This definitely indicates that you're building gcc for a glibc target
and not for musl. The files that the errors occurred in are only for
use with glibc.

Rich

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.