gcc-5.3.0 libstdc++-v3: configure: error: No support for this host/target combination for arm-none-eabi

Kai Ruottu kai.ruottu@wippies.com
Tue Apr 12 13:16:00 GMT 2016


12.4.2016, 15:06, Jonathan Wakely kirjoitti:
> On 12 April 2016 at 13:00, Jonathan Wakely <jwakely.gcc@gmail.com> wrote:
>> On 31 March 2016 at 19:30, onkel.jack@t-online.de
>> <onkel.jack@t-online.de> wrote:
>>> Thanks Kai.
>>>
>>> In the meantime I did some more experiments after I figured out I can repro the problem on RHEL6 too which does build much faster ...
>>>
>>> It turned out, the problem goes away if newlib gets configured with --enable-newlib-multithread, I lost that, for whatever reason.
>>> Somehow it seems to have an influence on configure libstdc++. Guess a diff in newlib headers might find it.
>>> I think, threading in gcc and newlib needs to be configured consistent despite the "single" default means NO, maybe its different in libstdc++  ...
>> single means NO, but single is not necessarily the default!
>>
>> The docs you quoted say:
>>
>> "Beware that on some systems, GCC has not been taught what threading
>> models are generally available for the system. In this case,
>> --enable-threads is an alias for --enable-threads=single."
>>
>> But that's not the case for your target. GCC has been taught what
>> threading models are available for arm-geabi using newlib, so when you
>> say --enable-threads it assumes you want to enable threads!

Ok, my point was based on what I understand "threads" being :

https://en.wikipedia.org/wiki/Thread_%28computing%29

That they need at least some simple "operating system" being implemented to
schedule the "tasks" running at the same time.  In very early 1980's I 
myself made one
simple one on a 8080 which tried to change task every 10 ms or even 1 ms 
(interrupt
received, "sharing the CPU time") in the circular queue of known tasks 
and if the task
in order had nothing to do (waiting something), gave its 10 ms or 1 ms 
turn to the next
in the queue.

So using for instance RTEMS :

https://www.rtems.org/

as that "operating system" with newlib (I remember RTEMS using it) would 
make
using threads understandable.  But I cannot "grok" how the bare 
"arm-eabi" object
format or the generic newlib C library could provide that required 
"operating system"
for threads.



More information about the Gcc-help mailing list