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
+arm-none-eabi-gcc. Below mentioned are some of the reasons for using the RTEMS
+ ``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 
+  the RTEMS 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 
+  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 multilib variants. Multilibs 
+  to match the BSP are set by selecting a specific set of machine options using
+  the RTEMS cross-compiler.

devel mailing list

Reply via email to