An alternative to Newlib?

I am a firmware engineer working with processors such as IA-32. We are looking for a chain of compiler tools - preferably.

We used Mentor Graphics CodeBench Lite, but it is no longer available.

We looked at other GCC distributions, but none of them had a simple glibc implementation. No, except newlib, but we cannot use it because of problems with licensing GPL and LGPL. We are OEM, and our customers (and we) have their own code.

Any suggestions are welcome.

+4
source share
2 answers

Sourcery "lite" gpl tools are still available, it's just that Mentor likes to play hidden link.

If you need a small C library with non-GPL licensing, you can look at Bionic with Android.

However, you may be wrong. IANAL, but most C library libraries have some kind of communication exception that you can investigate with the help of your lawyers - their usefulness as system libraries will be extremely limited.

And in fact, a quick search for the newlib licensing page (which is difficult) seems to show that it is more under BSD-type licenses than in the GPL style, although help will be needed to fully examine them.

+5
source

Mentor can no longer provide the Lite version of the IA-32 tool niche, but I’m sure that it is still supported in commercial publications, and the basic license is not so expensive.

As Chris says, the Newlib licensing page is a bit complicated, but the bottom line is that basically everything you need for an open metal system is BSD licensed; IIRC, parts licensed by the GPL, are clearly defined system-specific parts that reference things in the Linux kernel, etc. (And, therefore, must be licensed by the GPL), and they are not included in open-air builds, I think that they are even all in one or two different directories that you can simply delete. Obviously, you should do the analysis for yourself, but you should find the result.

A vivid combination that may be useful: the download page for the latest CodeBench Lite for EL-IA-32 that was created is located on this page . If you download the original tarball, you will get the Newlib sources that were used to create it, as well as the .sh file in the package indicating how it was configured and built. You will notice that in the documentation (licenses are at the end of the Getting Started Guide) Newlib binaries are simply listed as licensed by BSD, so this should show you how Mentor got a compiled library that matches this licensing description.

(Disclaimer: Until recently, I worked for Mentor.)

+2
source

Source: https://habr.com/ru/post/1484663/


All Articles