public inbox for crossgcc@sourceware.org
 help / color / mirror / Atom feed
From: Chris Packham <Chris.Packham@alliedtelesis.co.nz>
To: "crossgcc@sourceware.org" <crossgcc@sourceware.org>
Subject: Re: Building on a Mac
Date: Sun, 15 Nov 2020 20:52:16 +0000	[thread overview]
Message-ID: <00befade-d9e6-984b-5ad5-40264a3ff951@alliedtelesis.co.nz> (raw)
In-Reply-To: <CAEUVO9GhPZiBR+YGWQT_-jD-MVMkkxHApvziJKM_WQwR=dZHuQ@mail.gmail.com>

Hi,

On 14/11/20 9:30 am, James Hudson via crossgcc wrote:
> Hello,
>
> I am just wondering if there is any configuration where *ct-ng build* will
> succeed on the mac or are these tools broken right now on the mac?
>
> Regards,
> Eric

Kumar recently raised a PR to add some CI jobs for macOS which shows 
configurations that are working

https://github.com/crosstool-ng/crosstool-ng/actions/runs/358393983

Whether or not to accept this PR is up for debate. The general problem 
is that of the already small pool of crosstool-ng contributors very few 
are using macOS. That is of course self defeating because if the macOS 
support isn't there then where will the contributors come from?

> On Fri, Nov 13, 2020 at 2:55 PM Ray Donnelly <mingw.android@gmail.com>
> wrote:
>
>> GCC on mac will probably be able to make you a native compiler. It
>> won't be able to make you a cross compiler (easily) or (even more
>> tricky) a canadian cross compiler. Whether you should give up or not
>> is up to you! Certainly technologies like docker do offer alternatives
>> but they come at an execution cost. For sure, I'd love to see some
>> patches developed to fix the issues with macOS GCC-based-toolchains in
>> these more exotic scenarios! I did, at some point in the distant past,
>> create cross compilers that ran on macOS and targeted Linux. For fun I
>> did the same for Windows as host.
>>
>> On Fri, Nov 13, 2020 at 8:32 PM James Hudson <jameshudson3010@gmail.com>
>> wrote:
>>> Hello,
>>>
>>> Thank you for your reply.
>>>
>>> I can be (somewhat) flexible in how I configure. Do other configurations
>> work on the Mac? Or should I not even try to use these tools on the Mac and
>> move to Ubuntu?
The path of least resistance would be to do Linux development on a Linux 
host. But at the same time I don't want to force anyone to use a 
particular platform, part of the thing that attracted me to free 
software was the freedom to choose.
>>> A summary of what I changed from the defaults is:
>>>
>>> Debug facilities → gdb
The actual error that started this thread was from gdb so maybe just 
disabling that would be enough. These days it's possible to build a 
multi-arch gdb so having ct-ng do it is a bit of historical baggage 
(although convenient if you're after a complete toolchain for a specific 
microcontroller).
>>> Debug facilities → ltrace
>>> Debug facilities → strace
>>>
>>> Companion tools → autoconf
>>> Companion tools → automake
>>>
>>> Operating system → Version of Linux → 4.19.21
>>> Binary utilities → Version of binutils → 2.30
>>> C-library → Version of glibc → 2.27
>>> C compiler → Version of gcc → 7.4.0
>>>
>>>
>>> The complete .config file is at
>> https://gist.github.com/James-Hudson3010/5736b2c258807c516eef4636dbd21cfc
Just curious about this. In the discussion around Kumar's PR it was 
thought people doing Linux development would probably do so on a Linux 
host (possibly via some virtualization). So we might mitigate some of 
the issues if we concentrated on the bare-metal scenarios.
>>> Regards,
>>> Eric
>>>
>>> On Fri, Nov 13, 2020 at 2:08 PM Ray Donnelly <mingw.android@gmail.com>
>> wrote:
>>>> GCC on macOS is basically unmaintained. you would have to investigate
>>>> and fix these things for yourself I think.
>>>>
>>>> On Fri, Nov 13, 2020 at 3:50 PM James Hudson via crossgcc
>>>> <crossgcc@sourceware.org> wrote:
>>>>> I am trying to build crosstool-NG on my mac ( Catalina -- 10.15.7 ).
>>>>>
>>>>> After executing *ct-ng build*, I eventually get the errors below. How
>> can I
>>>>> workaround or resolve this issue? I am assuming I do not have
>> something
>>>>> configured correctly.
>>>>>
>>>>>
>>>>> [EXTRA]    Building cross gdb
>>>>> [ERROR]
>>>>>
>> /Volumes/thedrive/build/x86_64-unknown-linux-gnu/src/gdb/readline/rltty.c:83:7:
>>>>> error: implicit declaration of function 'ioctl' is invalid in C99
>>>>> [-Werror,-Wimplicit-function-declaration]
>>>>> [ERROR]
>>>>>
>> /Volumes/thedrive/build/x86_64-unknown-linux-gnu/src/gdb/readline/rltty.c:720:3:
>>>>> error: implicit declaration of function 'ioctl' is invalid in C99
>>>>> [-Werror,-Wimplicit-function-declaration]
>>>>> [ERROR]
>>>>>
>> /Volumes/thedrive/build/x86_64-unknown-linux-gnu/src/gdb/readline/rltty.c:759:3:
>>>>> error: implicit declaration of function 'ioctl' is invalid in C99
>>>>> [-Werror,-Wimplicit-function-declaration]
>>>>> [ERROR]    make[3]: *** [Makefile:97: rltty.o] Error 1
>>>>> [ERROR]    make[3]: *** Waiting for unfinished jobs....
>>>>> [ERROR]    make[2]: *** [Makefile:7804: all-readline] Error 2
>>>>> [ERROR]    make[2]: *** Waiting for unfinished jobs....
>>>>> [ERROR]    make[1]: *** [Makefile:879: all] Error 2
>>>>> [ERROR]
>>>>> [ERROR]  >>
>>>>> [ERROR]  >>  Build failed in step 'Installing cross-gdb'
>>>>> [ERROR]  >>        called in step '(top-level)'
>>>>> [ERROR]  >>
>>>>> [ERROR]  >>  Error happened in: CT_DoExecLog[scripts/functions@376]
>>>>> [ERROR]  >>        called from:
>>>>> do_gdb_backend[scripts/build/debug/300-gdb.sh@281]
>>>>> [ERROR]  >>        called from:
>>>>> do_debug_gdb_build[scripts/build/debug/300-gdb.sh@59]
>>>>> [ERROR]  >>        called from: do_debug[scripts/build/debug.sh@35]
>>>>> [ERROR]  >>        called from: main[scripts/crosstool-NG.sh@696]
>>>>> [ERROR]  >>
>>>>> [ERROR]  >>  For more info on this error, look at the file:
>> 'build.log'
>>>>> [ERROR]  >>  There is a list of known issues, some with workarounds,
>> in:
>>>>> [ERROR]  >>      https://crosstool-ng.github.io/docs/known-issues/
>>>>> [ERROR]  >>
>>>>> [ERROR]  >>  If you feel this is a bug in crosstool-NG, report it at:
>>>>> [ERROR]  >>      https://github.com/crosstool-ng/crosstool-ng/issues/
>>>>> [ERROR]  >>
>>>>> [ERROR]  >>  Make sure your report includes all the information
>> pertinent
>>>>> to this issue.
>>>>> [ERROR]  >>  Read the bug reporting guidelines here:
>>>>> [ERROR]  >>      http://crosstool-ng.github.io/support/
>>>>> --
>>>>> For unsubscribe information see http://sourceware.org/lists.html#faq
> --
> For unsubscribe information see http://sourceware.org/lists.html#faq

      reply	other threads:[~2020-11-15 20:52 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-13 14:45 James Hudson
2020-11-13 19:08 ` Ray Donnelly
2020-11-13 19:32   ` James Hudson
2020-11-13 19:54     ` Ray Donnelly
2020-11-13 20:30       ` James Hudson
2020-11-15 20:52         ` Chris Packham [this message]

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=00befade-d9e6-984b-5ad5-40264a3ff951@alliedtelesis.co.nz \
    --to=chris.packham@alliedtelesis.co.nz \
    --cc=crossgcc@sourceware.org \
    /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.
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 read-only IMAP folder(s) and NNTP newsgroup(s).