[PATCH] This patch provides usage of RTEMS cross-compiler over GCC cross-compiler

Utkarsh Rai utkarsh.rai60 at gmail.com
Thu Mar 26 02:24:49 UTC 2020


Sorry, I did not look into it deeply enough. I will make the necessary
changes.

On Thu, Mar 26, 2020 at 1:44 AM Gedare Bloom <gedare at rtems.org> wrote:

> short commit message is a bit wordy. It doesn't need to be a sentence.
> We know it is a patch/commit.
>
> See https://devel.rtems.org/wiki/Developer/Git#GitCommits (which
> should probably be in the docs, it is linked from
> https://docs.rtems.org/branches/master/eng/vc-users.html#creating-a-patch)
>
> On Wed, Mar 25, 2020 at 12:58 PM utkarsh.rai60 at gmail.com
> <utkarsh.rai60 at gmail.com> wrote:
> >
> > ---
> >  user/start/tools.rst | 31 +++++++++++++++++++++++++++++++
> >  1 file changed, 31 insertions(+)
> >
> > diff --git a/user/start/tools.rst b/user/start/tools.rst
> > index c3f039b..c3147e8 100644
> > --- a/user/start/tools.rst
> > +++ b/user/start/tools.rst
> > @@ -76,3 +76,34 @@ source code used.
> >
> >
> >  Add ``--verbose`` to the GCC command for the the verbose version
> details.
> > +
> > +Need for RTEMS-Specific Cross-Compiler
> > +--------------------------------------------
> > +
> > +New users are often confused as to why they can't use their
> distribution's
> > +cross-compiler for their target on rtems, e.g.,the riscv64-linux-gnu or
> the
> space after comma
>
>
> > +arm-none-eabi-gcc. Below mentioned are some of the reasons for using
> the RTEMS
> > +cross-compiler.
> > +
> > + ``Correct configuration of newlib -``
> > +  Newlib is a C standard library implementation intended for use on
> embedded
> > +  systems. Most of the POSIX and libc support for RTEMS is derived from
> newlib.
> > +  The RTEMS cross-compiler configures newlib correctly for RTEMS.
> > +
> > + ``Threading in GCC support libraries -``
> > +  GCC support threading libraries such as ``pthread.h`` provide
> threading
> > +  support to an application; these libraries are tailored according to
> RTEMS using
> > +  the RTEMS cross-compiler.
> This paragraph looks wrong to me. I don't think pthread.h comes
> through gcc. We get it from newlib. But there are other threading
> packages in gcc that we need to make "RTEMS-friendly" for languages
> with threads such as Go threads (libgo) , openmp (libgomp), and maybe
> others. if you want to provide one example do a bit of research to get
> it right. It would also be possible to try to identify the exhaustive
> set but that doesn't seem necessary.
>
> > +
> > + ``Provide preprocessor define __rtems__ -``
> > +  The ``__rtems__`` preprocessor define is used to provide conditional
> code
> > +  compilation in source files that are shared with other projects e.g.
> in newlib
> > +  or imported code from freebsd.
> > +
> > + ``Multilib variants to match the BSP -``
> > +  RTEMS configures GCC to create separate runtime libraries for each
> supported
> > +  instruction set, floating point unit, vector unit, word size (e.g.
> 32-bit and
> > +  64-bit), endianness, ABI, processor errata workarounds,and so on in
> the
> space after comma
>
> I don't think we actually multilib any 32/64 bit targets, but that's
> probably fine to leave be.
>
> > +  architecture. These libraries are termed multilib variants. Multilibs
> variants
> > +  to match the BSP are set by selecting a specific set of machine
> options using
> > +  the RTEMS cross-compiler.
> > --
> > 2.17.1
> >
> > _______________________________________________
> > devel mailing list
> > devel at rtems.org
> > http://lists.rtems.org/mailman/listinfo/devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20200326/adba22bc/attachment-0001.html>


More information about the devel mailing list