source: rtems-docs/user/start/tools.rst @ cb4e4e2

5
Last change on this file since cb4e4e2 was 06a1fa2, checked in by Sebastian Huber <sebastian.huber@…>, on 01/23/19 at 12:52:06

user: Add "Install the Tool Suite" section

  • Property mode set to 100644
File size: 7.9 KB
Line 
1.. SPDX-License-Identifier: CC-BY-SA-4.0
2
3.. Copyright (C) 2019 embedded brains GmbH
4.. Copyright (C) 2019 Sebastian Huber
5
6.. _QuickStartTools:
7
8Install the Tool Suite
9======================
10
11You chose an installation prefix and cloned two RTEMS repositories in the
12previous sections.  We chose :file:`$HOME/quick-start/rtems/5` as the
13installation prefix and cloned the repositories in
14:file:`$HOME/quick-start/src`.
15
16You must select the
17:ref:`target architecture <TargetArchitectures>` for which you need a tool
18suite.  In this quick start chapter we choose `sparc-rtems5`.  The
19`sparc-rtems5` is the tool suite name for the SPARC architecture and RTEMS
20version 5.  The tool suite for RTEMS and the RTEMS sources are tightly coupled.
21For example, do not use a RTEMS version 5 tool suite with RTEMS version 4.11
22sources and vice versa.  We use the RSB in two steps.  The first step is to
23download additional sources and patches.  Afterwards, you could disconnect your
24host computer from the internet.  It is no longer required to work with RTEMS.
25
26.. code-block:: none
27
28    cd $HOME/quick-start/src/rsb/rtems
29    ../source-builder/sb-set-builder --source-only-download 5/rtems-sparc
30
31This command should output something like this (omitted lines are denoted by
32...):
33
34.. code-block:: none
35
36    RTEMS Source Builder - Set Builder, 5 (98588a55961a)
37    warning: exe: absolute exe found in path: (__unzip) /usr/local/bin/unzip
38    Build Set: 5/rtems-sparc
39    ...
40    download: https://ftp.gnu.org/gnu/gcc/gcc-7.4.0/gcc-7.4.0.tar.xz -> sources/gcc-7.4.0.tar.xz
41    ...
42    Build Sizes: usage: 0.000B total: 141.738MB (sources: 141.559MB, patches: 183.888KB, installed 0.000B)
43    Build Set: Time 0:01:17.613061
44
45If you encounter errors in the first step, check your internet connection,
46firewall settings, virus scanners and the availability of the download servers.
47The seconds step is to build and install the tool suite.
48
49.. code-block:: none
50
51    cd $HOME/quick-start/src/rsb/rtems
52    ../source-builder/sb-set-builder --prefix=$HOME/quick-start/rtems/5 5/rtems-sparc
53
54This command should output something like this (omitted lines are denoted by
55...):
56
57.. code-block:: none
58
59    RTEMS Source Builder - Set Builder, 5 (98588a55961a)
60    warning: exe: absolute exe found in path: (__unzip) /usr/local/bin/unzip
61    Build Set: 5/rtems-sparc
62    ...
63    config: tools/rtems-gcc-7.4.0-newlib-3e24fbf6f.cfg
64    package: sparc-rtems5-gcc-7.4.0-newlib-3e24fbf6f-x86_64-freebsd12.0-1
65    building: sparc-rtems5-gcc-7.4.0-newlib-3e24fbf6f-x86_64-freebsd12.0-1
66    sizes: sparc-rtems5-gcc-7.4.0-newlib-3e24fbf6f-x86_64-freebsd12.0-1: 4.651GB (installed: 879.191MB)
67    cleaning: sparc-rtems5-gcc-7.4.0-newlib-3e24fbf6f-x86_64-freebsd12.0-1
68    ....
69    Build Sizes: usage: 5.618GB total: 1.105GB (sources: 141.559MB, patches: 185.823KB, installed 989.908MB)
70    Build Set: Time 0:22:02.262039
71
72In case the seconds step was successful, you can check if for example the cross
73C compiler works with the following command:
74
75.. code-block:: none
76
77    $HOME/quick-start/rtems/5/bin/sparc-rtems5-gcc --version --verbose
78
79This command should output something like below.  In this output the actual
80prefix path was replaced by ``$PREFIX``.  The ``compiled by`` line depends on
81the native C++ compiler of your host computer.  In the output you see the Git
82hash of the RSB.  This helps you to identify the exact sources which were used
83to build the cross compiler of your RTEMS tool suite.
84
85.. code-block:: none
86
87    Using built-in specs.
88    COLLECT_GCC=$PREFIX/bin/sparc-rtems5-gcc
89    COLLECT_LTO_WRAPPER=$PREFIX/bin/../libexec/gcc/sparc-rtems5/7.4.0/lto-wrapper
90    sparc-rtems5-gcc (GCC) 7.4.0 20181206 (RTEMS 5, RSB 98588a55961a92f5d27bfd756dfc9e31b2b1bf98, Newlib 3e24fbf6f)
91    Copyright (C) 2017 Free Software Foundation, Inc.
92    This is free software; see the source for copying conditions.  There is NO
93    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
94
95
96    Target: sparc-rtems5
97    Configured with: ../gcc-7.4.0/configure --prefix=$PREFIX --bindir=$PREFIX/bin --exec_prefix=$PREFIX --includedir=$PREFIX/include --libdir=$PREFIX/lib --libexecdir=$PREFIX/libexec --mandir=$PREFIX/share/man --infodir=$PREFIX/share/info --datadir=$PREFIX/share --build=x86_64-freebsd12.0 --host=x86_64-freebsd12.0 --target=sparc-rtems5 --disable-libstdcxx-pch --with-gnu-as --with-gnu-ld --verbose --with-newlib --disable-nls --without-included-gettext --disable-win32-registry --enable-version-specific-runtime-libs --disable-lto --enable-newlib-io-c99-formats --enable-newlib-iconv --enable-newlib-iconv-encodings=big5,cp775,cp850,cp852,cp855,cp866,euc_jp,euc_kr,euc_tw,iso_8859_1,iso_8859_10,iso_8859_11,iso_8859_13,iso_8859_14,iso_8859_15,iso_8859_2,iso_8859_3,iso_8859_4,iso_8859_5,iso_8859_6,iso_8859_7,iso_8859_8,iso_8859_9,iso_ir_111,koi8_r,koi8_ru,koi8_u,koi8_uni,ucs_2,ucs_2_internal,ucs_2be,ucs_2le,ucs_4,ucs_4_internal,ucs_4be,ucs_4le,us_ascii,utf_16,utf_16be,utf_16le,utf_8,win_1250,win_1251,win_1252,win_1253,win_1254,win_1255,win_1256,win_1257,win_1258 --enable-threads --disable-plugin --enable-libgomp --enable-languages=c,c++
98    Thread model: rtems
99    gcc version 7.4.0 20181206 (RTEMS 5, RSB 98588a55961a92f5d27bfd756dfc9e31b2b1bf98, Newlib 3e24fbf6f) (GCC)
100    COLLECT_GCC_OPTIONS='--version' '-v' '-mcpu=v7'
101     $PREFIX/bin/../libexec/gcc/sparc-rtems5/7.4.0/cc1 -quiet -v -iprefix $PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0/ help-dummy -quiet -dumpbase help-dummy -mcpu=v7 -auxbase help-dummy -version --version -o /tmp//ccuAN1wc.s
102    GNU C11 (GCC) version 7.4.0 20181206 (RTEMS 5, RSB 98588a55961a92f5d27bfd756dfc9e31b2b1bf98, Newlib 3e24fbf6f) (sparc-rtems5)
103            compiled by GNU C version 4.2.1 Compatible FreeBSD Clang 6.0.1 (tags/RELEASE_601/final 335540), GMP version 6.1.0, MPFR version 3.1.4, MPC version 1.0.3, isl version isl-0.16.1-GMP
104
105    GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
106    COLLECT_GCC_OPTIONS='--version' '-v' '-mcpu=v7'
107     $PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0/../../../../sparc-rtems5/bin/as -v -s --version -o /tmp//ccFVgRAa.o /tmp//ccuAN1wc.s
108    GNU assembler version 2.32 (sparc-rtems5) using BFD version (GNU Binutils) 2.32
109    GNU assembler (GNU Binutils) 2.32
110    Copyright (C) 2019 Free Software Foundation, Inc.
111    This program is free software; you may redistribute it under the terms of
112    the GNU General Public License version 3 or later.
113    This program has absolutely no warranty.
114    This assembler was configured for a target of `sparc-rtems5'.
115    COMPILER_PATH=$PREFIX/bin/../libexec/gcc/sparc-rtems5/7.4.0/:$PREFIX/bin/../libexec/gcc/:$PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0/../../../../sparc-rtems5/bin/
116    LIBRARY_PATH=$PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0/:$PREFIX/bin/../lib/gcc/:$PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0/../../../../sparc-rtems5/lib/
117    COLLECT_GCC_OPTIONS='--version' '-v' '-mcpu=v7'
118     $PREFIX/bin/../libexec/gcc/sparc-rtems5/7.4.0/collect2 --version $PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0/../../../../sparc-rtems5/lib/crt0.o -L$PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0 -L$PREFIX/bin/../lib/gcc -L$PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0/../../../../sparc-rtems5/lib /tmp//ccFVgRAa.o -lgcc -lc -lgcc
119    collect2 version 7.4.0 20181206 (RTEMS 5, RSB 98588a55961a92f5d27bfd756dfc9e31b2b1bf98, Newlib 3e24fbf6f)
120    $PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0/../../../../sparc-rtems5/bin/ld --version $PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0/../../../../sparc-rtems5/lib/crt0.o -L$PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0 -L$PREFIX/bin/../lib/gcc -L$PREFIX/bin/../lib/gcc/sparc-rtems5/7.4.0/../../../../sparc-rtems5/lib /tmp//ccFVgRAa.o -lgcc -lc -lgcc
121    GNU ld (GNU Binutils) 2.32
122    Copyright (C) 2019 Free Software Foundation, Inc.
123    This program is free software; you may redistribute it under the terms of
124    the GNU General Public License version 3 or (at your option) a later version.
125    This program has absolutely no warranty.
126    COLLECT_GCC_OPTIONS='--version' '-v' '-mcpu=v7'
Note: See TracBrowser for help on using the repository browser.