Looking for a C++11 support Overview
Sebastian Huber
sebastian.huber at embedded-brains.de
Wed Mar 2 06:07:39 UTC 2016
On 01/03/16 22:32, Isaac Gutekunst wrote:
>
>
> On 02/25/2016 03:37 AM, Sebastian Huber wrote:
>> For proper C++11 support you need RTEMS 4.12. Below "fully supported"
>> means as far as GCC/libstdc++ supports it.
>>
>> On 24/02/16 18:52, Isaac Gutekunst wrote:
>>> Hi All,
>>>
>>>
>>> Which C++11 features are supported by RTEMS?
>>> Is there a table listing supported features, and limitations? Sorry if
>>> I just missed it.
>>>
>>> I'm specially interested in
>>>
>>> * std::atomic
>>
>> Fully supported on targets that don't need libatomic.
>>
>>> * std::thread
>>> * std::queue
>>> * std::mutex
>>> * std::condition_variable
>>
>> Fully supported.
>>
>>> * std::chrono
>>
>> Partially supported. For the details run the libstdc++ test suite and
>> check the libstdc++ configure script which doesn't detect all RTEMS
>> features (we have to fix several configure checks for this).
>
> I've never looked at gcc sources, so I'm probably doing something
> stupid..
>
> I ran RSB with --no-clean, and looked into the build directory for
> libstdc++, which for me is:
>
> rtems-source-builder/rtems/build/arm-rtems4.12-gcc-6-20160228-newlib-2.3.0.20160226-x86_64-linux-gnu-1/gcc-6-20160228/libstdc++-v3
>
>
>
> I can't seem to find any evidence of RTEMS. I was particular
> interested in seeming something in config/os
>
>
> Could you point me in the right direction? I'd like to know what
> things work. I'd be happy to make some fixes if it doesn't seem too hard.
Working with the GCC sources and build needs a bit of experience. The
libstdc++ is customized via the output of the configure script. Some
tests use a link-time test, which fails in case of RTEMS since several
functions are declared in Newlib header files and defined in RTEMS, thus
not link-time available during GCC build.
I think the main problem is that gcc_no_link=no
(config/no-executables.m4) since
int
main ()
{
;
return 0;
}
links. This leads GCC_TRY_COMPILE_OR_LINK() to use link-time configure
tests.
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber at embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
More information about the users
mailing list