ARM-software / LLVM-embedded-toolchain-for-Arm

A project dedicated to building LLVM toolchain for Arm and AArch64 embedded targets.
Apache License 2.0
407 stars 95 forks source link

iostream is not available with newlib #524

Open nolange opened 6 days ago

nolange commented 6 days ago

newlib libc++ is compiled with _LIBCPP_HAS_NO_LOCALIZATION, this means that iostreams are not available at all.

I am not asking for fully supporting the locales, but provide simple C-only locale stubs.

the picolib variant does this, and newlib should be the more complete variant?

smithp35 commented 6 days ago

Thanks for pointing that out. Our newlib overlay package is still in the experimental state at the moment. We're hoping to improve that in the future, particularly when newlib support for building with clang without patches is available.

It isn't currently a priority so this may be a case of "patches welcome" until we can get to it.

nolange commented 6 days ago

Ok. How is the relation of this project and Arm Compiler for Embedded?

Totally separate entities?

voltur01 commented 6 days ago

Hi,

Arm Compiler for Embedded is a commercial toolchain that uses armclang compiler that is based on clang, but the rest of the toolchain components are proprietary.

This project - LLVM Embedded Toolchain for Arm - is an attempt to create a working and easy to use embedded toolchain using open-source components only.

So these are two very different toolchains based on the same great LLVM technology at the core.