[PATCH v3] Chapter-on-need-for-RTEMS-specific-cross-compiler

Gedare Bloom gedare at rtems.org
Fri Apr 3 15:17:08 UTC 2020


Hi Utkarsh,

Please also fix some whitespace problems
.git/rebase-apply/patch:23: trailing whitespace.
 ``Correct configuration of Newlib -``
.git/rebase-apply/patch:28: trailing whitespace.
 ``Threading in GCC support libraries -``
.git/rebase-apply/patch:31: trailing whitespace.
     done by the RTEMS specific cross-compiler.
.git/rebase-apply/patch:32: trailing whitespace.
.git/rebase-apply/patch:33: trailing whitespace.
 ``Provide preprocessor define __rtems__ -``
warning: squelched 1 whitespace error

And only use one blank line before the new section.

On Fri, Apr 3, 2020 at 9:15 AM Utkarsh Rai <utkarsh.rai60 at gmail.com> wrote:
>
> Please ignore this patch, forgot to mention copyright details.
>
> On Fri, Apr 3, 2020 at 8:24 PM utkarsh.rai60 at gmail.com <utkarsh.rai60 at gmail.com> wrote:
>>
>> ---
>>  user/start/tools.rst | 33 +++++++++++++++++++++++++++++++++
>>  1 file changed, 33 insertions(+)
>>
>> diff --git a/user/start/tools.rst b/user/start/tools.rst
>> index c3f039b..494e95a 100644
>> --- a/user/start/tools.rst
>> +++ b/user/start/tools.rst
>> @@ -76,3 +76,36 @@ source code used.
>>
>>
>>  Add ``--verbose`` to the GCC command for the the verbose version details.
>> +
>> +
Here

>> +Need for RTEMS-Specific Cross-Compiler
>> +---------------------------------------------------------
>> +
>> +New users are often confused as to why they cannot use their distribution's
>> +cross-compiler for their target on rtems, e.g., the riscv64-linux-gnu or the
>> +arm-none-eabi-gcc on RTEMS. 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 -``
>> +     Several threading packages in GCC such as Go threads (libgo), OpenMP
>> +     (libgomp), and OpenACC need to be customized according to RTEMS. This is
>> +     done by the RTEMS specific cross-compiler.
>> +
>> + ``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 architecture. These libraries are termed as :ref:`Multilib
>> +     <TargetArchitectures>` variants. Multilib 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


More information about the devel mailing list