Changeset f672026 in rtems-docs


Ignore:
Timestamp:
Mar 12, 2020, 4:13:39 AM (5 months ago)
Author:
Chris Johns <chrisj@…>
Branches:
5, master
Children:
5bd9f4d
Parents:
88dd013
git-author:
Chris Johns <chrisj@…> (03/12/20 04:13:39)
git-committer:
Chris Johns <chrisj@…> (03/12/20 21:18:36)
Message:

user: Update Quick Start Guide

  • Add support for release source archives
  • Add building the BSP using the RSB
  • Add building packages using the RSB
  • Add an application

Closes #2998

Location:
user
Files:
2 added
1 deleted
9 edited

Legend:

Unmodified
Added
Removed
  • user/index.rst

    r88dd013 rf672026  
    1818    | |copy| 2016, 2019 embedded brains GmbH
    1919    | |copy| 2016, 2019 Sebastian Huber
    20     | |copy| 2012, 2019 Chris Johns
     20    | |copy| 2012, 2020 Chris Johns
    2121    | |copy| 2012 Gedare Bloom
    2222    | |copy| 1988, 2018 On-Line Applications Research Corporation (OAR)
  • user/start/app.rst

    r88dd013 rf672026  
    11.. SPDX-License-Identifier: CC-BY-SA-4.0
    22
    3 .. Copyright (C) 2019 embedded brains GmbH
    4 .. Copyright (C) 2019 Sebastian Huber
     3.. Copyright (C) 2020 Chris Johns
    54
    65.. _QuickStartAPP:
     
    98======================
    109
    11 TODO
     10You tested a BSP in the previous section.  We built the ``erc32`` BSP
     11and it is installed under :file:`$HOME/quick-start/rtems/5`.
     12
     13We will now create a simple hello world application with a Git
     14repository and using the `Waf <https://waf.io>`_ build system.
     15
     16The application is be created in :file:`$HOME/quick-start/app/hello`.
     17
     18In the output in this section the base directory :file:`$HOME/quick-start` was
     19replaced by ``$BASE``.
     20
     21The steps in this section assume you are in the directory
     22:file:`$HOME/quick-start/app/hello` after the first step changes to
     23it.
     24
     25Setup the application work space. Create a new Git repository, download
     26the Waf build system, and the `RTEMS Waf
     27<https://git.rtems.org/rtems_waf.git/tree/README>`_.
     28
     29Create the application directory and change into it:
     30
     31.. code-block:: none
     32
     33    mkdir -p $HOME/quick-start/app/hello
     34    cd $HOME/quick-start/app/hello
     35
     36Download the Waf build system and set it to executable:
     37
     38.. code-block:: none
     39
     40    curl https://waf.io/waf-2.0.19 > waf
     41    chmod +w waf
     42
     43Initialise a new Git repository:
     44
     45.. code-block:: none
     46
     47    git init
     48
     49Add RTEMS Waf support as a Git sub-module and initialise it:
     50
     51.. code-block:: none
     52
     53    git submodule add git://git.rtems.org/rtems_waf.git rtems_waf
     54
     55Create the application source files. Three files are created with an
     56editor of your choice.
     57
     58First create a C file that configures RTEMS. Using an editor create a
     59file called :file:`init.c` and copy the following configuration
     60settings:
     61
     62.. code-block:: c
     63
     64    /*
     65     * Simple RTEMS configuration
     66     */
     67    #include <rtems.h>
     68
     69    #define CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER
     70    #define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
     71    #define CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM
     72
     73    #define CONFIGURE_RTEMS_INIT_TASKS_TABLE
     74    #define CONFIGURE_MAXIMUM_TASKS 1
     75
     76    #define CONFIGURE_INIT
     77
     78    #include <rtems/confdefs.h>
     79
     80Create the *hello world* application source file. Using an editor
     81create :file:`hello.c` and copy the follow code:
     82
     83.. code-block:: c
     84
     85    /*
     86     * Hello world example
     87     */
     88    #include <rtems.h>
     89    #include <stdlib.h>
     90    #include <stdio.h>
     91
     92    rtems_task Init(
     93      rtems_task_argument ignored
     94    )
     95    {
     96      printf( "\nHello World\n" );
     97      exit( 0 );
     98    }
     99
     100Finally create the Waf script. Using an editor create :file:`wscript`
     101and copy the Waf script:
     102
     103.. code-block:: python
     104
     105    #
     106    # Hello world Waf script
     107    #
     108    from __future__ import print_function
     109
     110    rtems_version = "5"
     111
     112    try:
     113        import rtems_waf.rtems as rtems
     114    except:
     115        print('error: no rtems_waf git submodule')
     116        import sys
     117        sys.exit(1)
     118
     119    def init(ctx):
     120        rtems.init(ctx, version = rtems_version, long_commands = True)
     121
     122    def bsp_configure(conf, arch_bsp):
     123        # Add BSP specific configuration checks
     124        pass
     125
     126    def options(opt):
     127        rtems.options(opt)
     128
     129    def configure(conf):
     130        rtems.configure(conf, bsp_configure = bsp_configure)
     131
     132    def build(bld):
     133        rtems.build(bld)
     134
     135        bld(features = 'c cprogram',
     136            target = 'hello.exe',
     137            cflags = '-g -O2',
     138            source = ['hello.c',
     139                      'init.c'])
     140
     141Configure the application using Waf's ``configure`` command:
     142
     143.. code-block:: none
     144
     145    ./waf configure --rtems=$HOME/quick-start/rtems/5 --rtems-bsp=sparc/erc32
     146
     147The output will be something close to:
     148
     149.. code-block:: none
     150
     151     Setting top to                           : $BASE/app/hello
     152     Setting out to                           : $BASE/app/hello/build
     153     RTEMS Version                            : 5
     154     Architectures                            : sparc-rtems5
     155     Board Support Package (BSP)              : sparc-rtems5-erc32
     156     Show commands                            : no
     157     Long commands                            : no
     158     Checking for program 'sparc-rtems5-gcc'  : $BASE/rtems/5/bin/sparc-rtems5-gcc
     159     Checking for program 'sparc-rtems5-g++'  : $BASE/rtems/5/bin/sparc-rtems5-g++
     160     Checking for program 'sparc-rtems5-gcc'  : $BASE/rtems/5/bin/sparc-rtems5-gcc
     161     Checking for program 'sparc-rtems5-ld'   : $BASE/rtems/5/bin/sparc-rtems5-ld
     162     Checking for program 'sparc-rtems5-ar'   : $BASE/rtems/5/bin/sparc-rtems5-ar
     163     Checking for program 'sparc-rtems5-nm'   : $BASE/rtems/5/bin/sparc-rtems5-nm
     164     Checking for program 'sparc-rtems5-objdump' : $BASE/rtems/5/bin/sparc-rtems5-objdump
     165     Checking for program 'sparc-rtems5-objcopy' : $BASE/rtems/5/bin/sparc-rtems5-objcopy
     166     Checking for program 'sparc-rtems5-readelf' : $BASE/rtems/5/bin/sparc-rtems5-readelf
     167     Checking for program 'sparc-rtems5-strip'   : $BASE/rtems/5/bin/sparc-rtems5-strip
     168     Checking for program 'sparc-rtems5-ranlib'  : $BASE/rtems/5/bin/sparc-rtems5-ranlib
     169     Checking for program 'rtems-ld'             : $BASE/rtems/5/bin/rtems-ld
     170     Checking for program 'rtems-tld'            : $BASE/rtems/5/bin/rtems-tld
     171     Checking for program 'rtems-syms'           : $BASE/rtems/5/bin/rtems-syms
     172     Checking for program 'rtems-bin2c'          : $BASE/rtems/5/bin/rtems-bin2c
     173     Checking for program 'tar'                  : /usr/bin/tar
     174     Checking for program 'gcc, cc'              : $BASE/rtems/5/bin/sparc-rtems5-gcc
     175     Checking for program 'ar'                   : $BASE/rtems/5/bin/sparc-rtems5-ar
     176     Checking for program 'g++, c++'             : $BASE/rtems/5/bin/sparc-rtems5-g++
     177     Checking for program 'ar'                   : $BASE/rtems/5/bin/sparc-rtems5-ar
     178     Checking for program 'gas, gcc'             : $BASE/rtems/5/bin/sparc-rtems5-gcc
     179     Checking for program 'ar'                   : $BASE/rtems/5/bin/sparc-rtems5-ar
     180     Checking for c flags '-MMD'                 : yes
     181     Checking for cxx flags '-MMD'               : yes
     182     Compiler version (sparc-rtems5-gcc)         : 7.5.0 20191114 (RTEMS 5, RSB 5.1.0, Newlib fbaa096)
     183     Checking for a valid RTEMS BSP installation : yes
     184     Checking for RTEMS_DEBUG                    : no
     185     Checking for RTEMS_MULTIPROCESSING          : no
     186     Checking for RTEMS_NEWLIB                   : yes
     187     Checking for RTEMS_POSIX_API                : yes
     188     Checking for RTEMS_SMP                      : no
     189     Checking for RTEMS_NETWORKING               : no
     190     'configure' finished successfully (0.686s)
     191
     192Build the application:
     193
     194.. code-block:: none
     195
     196    ./waf
     197
     198The output will be something close to:
     199
     200.. code-block:: none
     201
     202    Waf: Entering directory `$BASE/app/hello/build/sparc-rtems5-erc32'
     203    [1/3] Compiling init.c
     204    [2/3] Compiling hello.c
     205    [3/3] Linking build/sparc-rtems5-erc32/hello.exe
     206    Waf: Leaving directory `$BASE/app/hello/build/sparc-rtems5-erc32'
     207    'build-sparc-rtems5-erc32' finished successfully (0.183s)
     208
     209Run the executable:
     210
     211.. code-block:: none
     212
     213    $HOME/quick-start/rtems/5/bin/rtems-run --rtems-bsps=erc32-sis build/sparc-rtems5-erc32/hello.exe
     214
     215The output will be something close to:
     216
     217.. code-block:: none
     218
     219    RTEMS Testing - Run, 5.1.0
     220     Command Line: $BASE/rtems/5/bin/rtems-run --rtems-bsps=erc32-sis build/sparc-rtems5-erc32/hello.exe
     221     Host: FreeBSD hihi 12.1-RELEASE-p2 FreeBSD 12.1-RELEASE-p2 GENERIC amd64
     222     Python: 3.7.6 (default, Jan 30 2020, 01:18:54) [Clang 6.0.1 (tags/RELEASE_601/final 335540)]
     223    Host: FreeBSD-12.1-RELEASE-p2-amd64-64bit-ELF (FreeBSD hihi 12.1-RELEASE-p2 FreeBSD 12.1-RELEASE-p2 GENERIC amd64 amd64)
     224
     225     SIS - SPARC/RISCV instruction simulator 2.21,  copyright Jiri Gaisler 2019
     226     Bug-reports to jiri@gaisler.se
     227
     228     ERC32 emulation enabled
     229
     230     Loaded build/sparc-rtems5-erc32/hello.exe, entry 0x02000000
     231
     232    Hello World
     233
     234    *** FATAL ***
     235    fatal source: 5 (RTEMS_FATAL_SOURCE_EXIT)
     236    fatal code: 0 (0x00000000)
     237    RTEMS version: 5.1.0
     238    RTEMS tools: 7.5.0 20191114 (RTEMS 5, RSB 5.1.0, Newlib fbaa096)
     239    executing thread ID: 0x08a010001
     240    executing thread name: UI1
     241    cpu 0 in error mode (tt = 0x101)
     242       107883  0200b6c0:  91d02000   ta  0x0
     243    Run time     : 0:00:01.011474
     244
     245Commit the application to the repository:
     246
     247.. code-block:: none
     248
     249    git add init.c hello.c wscript
     250    git commit -m "My first RTEMS application."
  • user/start/bootstrap.rst

    r88dd013 rf672026  
    99===========================
    1010
    11 You installed the tool suite in your installation prefix and cloned two RTEMS
    12 repositories in the previous sections.  We installed the tool suite in
    13 :file:`$HOME/quick-start/rtems/5` and cloned the repositories in
    14 :file:`$HOME/quick-start/src`.
     11You installed the tool suite in your installation prefix and made ready the
     12source for two RTEMS source packages in the previous sections.  We installed
     13the tool suite in :file:`$HOME/quick-start/rtems/5` and unpacked the RSB source
     14in :file:`$HOME/quick-start/src`.
    1515
    16 If you use source archives of a released RTEMS version, then you can skip this
    17 section.
     16You only need to *bootstrap* the RTEMS sources if you have used
     17:ref:`QuickStartSources_Git` to get the sources. If you use source archives of
     18a released RTEMS version you can skip this section and move to
     19:ref:`QuickStartBSPBuild`.
    1820
    1921Before you can build a :ref:`Board Support Package (BSP) <BSPs>` for your
    20 target hardware, you have to bootstrap the build system in the RTEMS sources.
    21 This is only necessary, if you use a Git repository clone of the RTEMS sources.
    22 You have to do this after a fresh repository clone and sometimes after build
    23 system file updates (e.g.  after a ``git pull``).  If you are not a build
    24 system expert, then do the bootstrap after each update of build system files.
    25 This is a bit annoying, but improving the build system is a complex and time
    26 consuming undertaking.  Feel free to help the RTEMS Project to improve it.  For
    27 the bootstrap it is important that the right version of Autotools
    28 (:file:`autoconf` and :file:`automake`) are in your ``$PATH``.  The right
    29 version of Autotools is shipped with the RTEMS tool suite you already
    30 installed.
     22target hardware from Git cloned RTEMS sources, you have to bootstrap the build
     23system in the RTEMS sources.  This is only necessary if you use a Git
     24repository clone of the RTEMS sources.  You have to do this after a fresh
     25repository clone and sometimes after build system file updates (e.g.  after a
     26``git pull``).  If you are not a build system expert, then do the bootstrap
     27after each update of build system files.  This is a bit annoying, but improving
     28the build system is a complex and time consuming undertaking.  Feel free to
     29help the RTEMS Project to improve it.  For the bootstrap it is important that
     30the right version of Autotools (:file:`autoconf` and :file:`automake`) are in
     31your ``$PATH``.  The right version of Autotools is shipped with the RTEMS tool
     32suite you already installed. Set the path to the tool suite installed under
     33your selected *prefix*:
     34
     35.. code-block:: none
     36
     37    export PATH=$HOME/quick-start/rtems/5/bin:"$PATH"
     38
     39Change into the RTEMS source tree to *bootstrap* the build system:
    3140
    3241.. code-block:: none
    3342
    3443    cd $HOME/quick-start/src/rtems
    35     export PATH=$HOME/quick-start/rtems/5/bin:"$PATH"
    36     ./bootstrap -c
    37     $HOME/quick-start/src/rsb/source-builder/sb-bootstrap
     44    ./rtems-bootstrap
    3845
    39 These commands should output something like this (omitted lines are denoted by
    40 ...):
     46This command should output something like this (omitted lines are denoted by
     47``...``):
    4148
    4249.. code-block:: none
    4350
    44     removing automake generated Makefile.in files
    45     removing configure files
    46     removing aclocal.m4 files
    47     $ $HOME/quick-start/src/rsb/source-builder/sb-bootstrap
    48     RTEMS Source Builder - RTEMS Bootstrap, 5 (f07504d27192)
    49       1/120: autoreconf: configure.ac
    50       2/120: autoreconf: c/configure.ac
    51       3/120: autoreconf: c/src/configure.ac
    52       4/120: autoreconf: c/src/lib/libbsp/arm/configure.ac
     51    RTEMS Bootstrap, 1.0
     52      1/122: autoreconf: configure.ac
     53      2/122: autoreconf: testsuites/configure.ac
     54      3/122: autoreconf: testsuites/fstests/configure.ac
     55      4/122: autoreconf: testsuites/smptests/configure.ac
     56      5/122: autoreconf: testsuites/psxtests/configure.ac
     57      6/122: autoreconf: testsuites/mptests/configure.ac
    5358    ...
    54     120/120: autoreconf: testsuites/tmtests/configure.ac
    55     Bootstrap time: 0:00:48.744222
     59    121/122: autoreconf: c/src/lib/libbsp/lm32/milkymist/configure.ac
     60    122/122: autoreconf: c/src/make/configure.ac
     61    Bootstrap time: 0:00:46.404643
  • user/start/bsp-build.rst

    r88dd013 rf672026  
    99===================================
    1010
    11 You installed the tool suite in your installation prefix, cloned two RTEMS
    12 repositories and bootstrapped the RTEMS sources in the previous sections.  We
    13 installed the tool suite in :file:`$HOME/quick-start/rtems/5` and cloned the
    14 repositories in :file:`$HOME/quick-start/src`.  We also bootstrapped the RTEMS
    15 sources.
     11You installed the tool suite in your installation prefix, made ready the source
     12for two RTEMS source packages and if you are using a Git clone bootstrapped the
     13RTEMS sources in the previous sections.  We installed the tool suite in
     14:file:`$HOME/quick-start/rtems/5` and unpacked the source in
     15:file:`$HOME/quick-start/src`.
    1616
    1717You are now able to build :ref:`Board Support Packages (BSPs) <BSPs>` for all
    18 architectures where you have an RTEMS tool suite installed.  To build
    19 applications on top of RTEMS, you have to configure, build and install a BSP
    20 for your target hardware.  To select a proper BSP for your target hardware
    21 consult the :ref:`BSPs <BSPs>` chapter.  We select the `erc32` BSP.
    22 
    23 We configure, build and install the BSP in four steps.  The first step is to
    24 create a build directory.  It must be separate from the RTEMS source directory.
    25 We use :file:`$HOME/quick-start/build/b-erc32`.
     18architectures you have an installed RTEMS tool suite.  To build applications on
     19top of RTEMS, you have to build and install a BSP for your target hardware.  To
     20select a proper BSP for your target hardware consult the :ref:`BSPs <BSPs>`
     21chapter.  We select the `erc32` BSP. The ``erc32`` BSP uses approximately 2.3G
     22bytes of disk space when the testsuite is built and 44M bytes of space when
     23installed.
     24
     25We will first show how to build the BSP using the RSB and then we will show how
     26to build the same BSP `manually <QuickStartBSPBuild_Manual>`_. You only need to
     27use one of the listed methods to build the BSP.
     28
     29In the output in this section the base directory :file:`$HOME/quick-start` was
     30replaced by ``$BASE``.
     31
     32.. QuickStartBSPBuild_RSB:
     33
     34RSB BSP Build
     35-------------
     36
     37The RSB build of RTEMS does not use the RTEMS source we made ready. It uses the
     38RSB source you downloaded in a previous section. If you are using a release RSB
     39source archive the BSP built is the released kernel image. If you are using a
     40Git clone of the RSB the BSP will be version referenced in the RSB clone.
     41
     42To build the BSP with all the tests run this command:
     43
     44.. code-block:: none
     45
     46    cd $HOME/quick-start/src/rsb/rtems
     47    ../source-builder/sb-set-builder --prefix=$HOME/quick-start/rtems/5 \
     48        --target=sparc-rtems5 --with-rtems-bsp=erc32 --with-rtems-tests=yes 5/rtems-kernel
     49
     50This command should output something like this:
     51
     52.. code-block:: none
     53
     54    RTEMS Source Builder - Set Builder, 5.1.0
     55    Build Set: 5/rtems-kernel
     56    config: tools/rtems-kernel-5.cfg
     57    package: sparc-rtems5-kernel-erc32-1
     58    building: sparc-rtems5-kernel-erc32-1
     59    sizes: sparc-rtems5-kernel-erc32-1: 2.279GB (installed: 44.612MB)
     60    cleaning: sparc-rtems5-kernel-erc32-1
     61    reporting: tools/rtems-kernel-5.cfg -> sparc-rtems5-kernel-erc32-1.txt
     62    reporting: tools/rtems-kernel-5.cfg -> sparc-rtems5-kernel-erc32-1.xml
     63    installing: sparc-rtems5-kernel-erc32-1 -> $BASE/
     64    cleaning: sparc-rtems5-kernel-erc32-1
     65    Build Set: Time 0:03:09.896961
     66
     67The RSB BSP build can be customised with following RSB command line options:
     68
     69``--with-rtems-tests``:
     70    Build the test suite. If ``yes`` is provided all tests in the testsuite are
     71    build. If ``no`` is provided no tests are built and if ``samples`` is
     72    provided only the sample executables are built, e.g.
     73    ``--with-rtems-tests=yes``.
     74
     75``--with-rtems-smp``:
     76    Build with SMP support. The BSP has to have SMP support or this option will
     77    fail with an error.
     78
     79``--with-rtems-legacy-network``:
     80    Build the legacy network software. We recommend you use the current network
     81    support in the RTEMS BSP Library (libbsd) unless you need to maintain a
     82    legacy product. Do not use the legacy networking software for new
     83    developments.
     84
     85``--with-rtems-bspopts``:
     86    Build the BSP with BSP specific options. This is an advanced option. Please
     87    refer to the BSP specific details in the :ref:`Board Support Packages
     88    (BSPs)` of this manual or the BSP source code in the RTEMS source
     89    directory. To supply a list of options quote then list with ``"``, e.g.
     90    ``--with-rtems-bspopts="BSP_POWER_DOWN_AT_FATAL_HALT=1"``
     91
     92If you have built a BSP with the RSB, you can move on to
     93:ref:`QuickStartBSPTest`.
     94
     95.. QuickStartBSPBuild_Manual:
     96
     97Manual BSP Build
     98----------------
     99
     100We manually build the BSP in four steps.  The first step is to create a build
     101directory.  It must be separate from the RTEMS source directory.  We use
     102:file:`$HOME/quick-start/build/b-erc32`.
    26103
    27104.. code-block:: none
     
    29106    mkdir -p $HOME/quick-start/build/b-erc32
    30107
    31 The second step is to configure the BSP.  There are various configuration
    32 options available.  Some configuration options are BSP-specific.  Prepend the
    33 RTEMS tool suite binary directory to your ``$PATH`` throughout the remaining
    34 steps.
     108The second step is to set your path. Prepend the RTEMS tool suite binary
     109directory to your ``$PATH`` throughout the remaining steps. Run the command:
     110
     111.. code-block:: none
     112
     113    export PATH=$HOME/quick-start/rtems/5/bin:"$PATH"
     114
     115Check your installed tools can be found by running:
     116
     117.. code-block:: none
     118
     119    command -v sparc-rtems5-gcc && echo "found" || echo "not found"
     120
     121The output should be:
     122
     123.. code-block:: none
     124
     125    found
     126
     127If ``not found`` is printed the tools are not correctly installed or the path
     128has not been correctly set. Check the contents of the path
     129:file:`$HOME/quick-start/rtems/5/bin` manually and if :file:`sparc-rtems5-gcc`
     130is present the path is wrong. If the file cannot be found return to
     131:ref:`QuickStartTools` and install the tools again.
     132
     133The third step is to configure the BSP.  There are various configuration
     134options available.  Some configuration options are BSP-specific.
    35135
    36136.. code-block:: none
    37137
    38138    cd $HOME/quick-start/build/b-erc32
    39     export PATH=$HOME/quick-start/rtems/5/bin:"$PATH"
    40139    $HOME/quick-start/src/rtems/configure \
    41140        --prefix=$HOME/quick-start/rtems/5 \
     
    46145
    47146This command should output something like this (omitted lines are denoted by
    48 ...):
     147``...``):
    49148
    50149.. code-block:: none
     
    65164    config.status: creating Makefile
    66165
    67 Building the BSP is the third step.
     166Building the BSP is the forth step.
    68167
    69168.. code-block:: none
     
    73172
    74173This command should output something like this (omitted lines are denoted by
    75 ...).  In this output the base directory :file:`$HOME/quick-start` was replaced
    76 by ``$BASE``.
     174...).
    77175
    78176.. code-block:: none
     
    98196    gmake[3]: Entering directory '$BASE/build/b-erc32/sparc-rtems5/c/erc32'
    99197    ...
    100     sparc-rtems5-gcc  -mcpu=cypress -O2 -g -ffunction-sections -fdata-sections -Wall -Wmissing-prototypes -Wimplicit-function-declaration -Wstrict-prototypes -Wnested-externs -B./../../lib/libbsp/sparc/erc32 -B$BASE/src/rtems/bsps/sparc/erc32/start -specs bsp_specs -qrtems -L./../../cpukit -L$BASE/src/rtems/bsps/sparc/shared/start -Wl,--wrap=printf -Wl,--wrap=puts -Wl,--wrap=putchar -Wl,--gc-sections -o spwkspace.exe spwkspace/spwkspace-init.o ./../../lib/libbsp/sparc/erc32/librtemsbsp.a ./../../cpukit/librtemscpu.a 
     198    sparc-rtems5-gcc  -mcpu=cypress -O2 -g -ffunction-sections -fdata-sections -Wall -Wmissing-prototypes -Wimplicit-function-declaration -Wstrict-prototypes -Wnested-externs -B./../../lib/libbsp/sparc/erc32 -B$BASE/src/rtems/bsps/sparc/erc32/start -specs bsp_specs -qrtems -L./../../cpukit -L$BASE/src/rtems/bsps/sparc/shared/start -Wl,--wrap=printf -Wl,--wrap=puts -Wl,--wrap=putchar -Wl,--gc-sections -o spwkspace.exe spwkspace/spwkspace-init.o ./../../lib/libbsp/sparc/erc32/librtemsbsp.a ./../../cpukit/librtemscpu.a
    101199    gmake[5]: Leaving directory '$BASE/build/b-erc32/sparc-rtems5/c/erc32/testsuites/sptests'
    102200    gmake[4]: Leaving directory '$BASE/build/b-erc32/sparc-rtems5/c/erc32/testsuites'
  • user/start/bsp-test.rst

    r88dd013 rf672026  
    3030.. code-block:: none
    3131
    32     RTEMS Testing - Tester, 5.0.not_released
     32    RTEMS Testing - Tester, 5.1.0
    3333     Command Line: $BASE/rtems/5/bin/rtems-test --rtems-bsp=erc32-sis --rtems-tools=$BASE/rtems/5 .
    3434     Python: 2.7.15 (default, Jan 10 2019, 01:14:47) [GCC 4.2.1 Compatible FreeBSD Clang 6.0.1 (tags/RELEASE_601/final 335540)]
  • user/start/index.rst

    r88dd013 rf672026  
    1515.. toctree::
    1616
    17     host
     17    preparation
    1818    prefixes
    1919    sources
     
    2323    bsp-test
    2424    app
     25    rsb-packages
  • user/start/prefixes.rst

    r88dd013 rf672026  
    2222
    2323You have to select a prefix for your installation. You will build and install
    24 the RTEMS tool suite, an RTEMS kernel for a BSP and you may build and install
    25 third party libraries. You can build them all as a stack with a single prefix
    26 or you can
     24the RTEMS tool suite, an RTEMS kernel for a BSP, and you may build and install
     25third party libraries. You can build all the parts as a stack with a single
     26prefix or you can separate various parts by providing different prefixes to
     27each part as it is built. Using separate prefixes is for experienced RTEMS
     28users.
     29
     30Do not select a prefix that is under the top of any of the source trees. The
     31prefix collects the install output of the various build steps you take in this
     32guide and need to be kept separate from the sources used.
    2733
    2834The RTEMS tool suite consists of a cross tool chain (Binutils, GCC, GDB,
    29 Newlib, etc.)  for your target architecture and :ref:`other tools <HostTools>`
    30 provided by the RTEMS Project. The RTEMS
    31 
     35Newlib, etc.)  for your target architecture and :ref:`RTEMS tools <HostTools>`
     36provided by the RTEMS Project. The RTEMS Tools are a toolkit that help create
     37the RTEMS ecosystem and help support the building of embedded real-time
     38applications and systems.
    3239
    3340You build and install the tool suite with the :ref:`RTEMS Source Builder (RSB)
    3441<RSB>`.  By default, the RSB will start the prefix path with a host operating
    35 system specific path plus :file:`rtems` plus the RTEMS version, e.g.
    36 :file:`/opt/rtems/5` on Linux and :file:`/usr/local/rtems/5` on FreeBSD and
    37 macOS.
     42system specific path plus :file:`rtems`, and the RTEMS version, e.g.
     43:file:`/opt/rtems/5` on Linux, and :file:`/usr/local/rtems/5` on FreeBSD and
     44macOS. Placing the RTEMS version number in the path lets you manage and
     45migrate RTEMS versions as they are released.
    3846
    3947It is strongly recommended to run the RSB as a *normal user* and not with
     
    4149make sure that your normal user has sufficient privileges to create files and
    4250directories under the prefix.  For example, you can create a directory
    43 :file:`/opt/rtems` and give it to a developer group with read, write and
     51:file:`/opt/rtems` and give it to a developer group with read, write, and
    4452execute permissions.  Alternatively, you can choose a prefix in your home
    4553directory, e.g. :file:`$HOME/rtems/5` or with a project-specific component
    46 :file:`$HOME/project-x/rtems/5`.  For more ideas, see the
    47 :ref:`project sandboxing <ProjectSandboxing>` section.  In this quick start
    48 chapter, we will choose :file:`$HOME/quick-start/rtems/5` for the RTEMS tool
    49 suite prefix.
     54:file:`$HOME/project-x/rtems/5`.  For more ideas, see the :ref:`project
     55sandboxing <ProjectSandboxing>` section.  In this quick start chapter, we will
     56choose :file:`$HOME/quick-start/rtems/5` for the RTEMS tool suite prefix.
    5057
    5158.. warning::
  • user/start/sources.rst

    r88dd013 rf672026  
    33.. Copyright (C) 2019 embedded brains GmbH
    44.. Copyright (C) 2019 Sebastian Huber
     5.. Copyright (C) 2020 Chris Johns
    56
    67.. _QuickStartSources:
     
    1112You have considered and chosen a suitable installation prefix in the previous
    1213section.  We have chosen :file:`$HOME/quick-start/rtems/5` as the installation
    13 prefix.
     14prefix. We will show how to use a released version of RTEMS and then as an
     15alternative we will show you using the :ref:`RSB Git repository
     16<QuickStartSources_Git>`. Consider using a Git clone if you wish to make
     17contributions to the RTEMS Project.
    1418
    15 You need at least two source archives or Git repositories to work with RTEMS.
    16 You can download the source archives for a released RTEMS version or you can
    17 clone Git repositories to get all versions of RTEMS including the development
    18 head.
     19You need the RTEMS Source Builder (RSB) to work with RTEMS and we prefer you
     20use a released version. A released version of the RSB downloads all source code
     21from the RTEMS servers. Each release archives all the referenced source
     22providing long term stability as changes in upstream projects do not effect a
     23release's build.
    1924
    20 We will clone the Git repositories into :file:`$HOME/quick-start/src`.
     25You will need approximately 1.5G bytes of disk space to build the tools, RTEMS
     26kernel, network stack and 3rd party packages for the ERC32 BSP.
     27
     28.. _QuickStartSources_Released:
     29
     30Releases
     31--------
     32
     33You can download the source archives for a released RTEMS version from RTEMS'
     34servers. Releases can be view at https://ftp.rtems.org/pub/rtems/releases with
     35the releases listed as a series under a release's major number. For RTEMS 5.1.0
     36the release series is `5 <https://ftp.rtems.org/pub/rtems/releases/5>`_ and the
     37release path is https://ftp.rtems.org/pub/rtems/releases/5/5.1.0.
     38
     39To work with the archives of a released RTEMS version, simply replace the
     40version number ``5`` used throughout this chapter with the version number you
     41selected, e.g. ``sparc-rtems4.11``, ``sparc-rtems6``, and so on.
     42
     43Download and unpack using the ``curl`` and ``tar`` command with these commands:
     44
     45.. code-block:: none
     46
     47    mkdir -p $HOME/quick-start/src
     48    cd $HOME/quick-start/src
     49    curl https://ftp.rtems.org/pub/rtems/releases/5/5.1.0/rtems-source-builder-5.1.0.tar.xz | tar xJf -
     50
     51If ``curl`` does not work consider using ``wget`` or a browser.
     52
     53The RSB is unpacked under the path ``rtems-source-builder-5.1.0``. Rename this
     54to ``rsb`` to get shorter paths during the tool suite build. To do this run
     55these commands:
     56
     57.. code-block:: none
     58
     59    cd $HOME/quick-start/src
     60    mv rtems-source-builder-5.1.0 rsb
     61
     62.. _QuickStartSources_Released_RTEMS:
     63
     64If you wish to build the RTEMS kernel from source obtain the RTEMS kernel
     65sources:
     66
     67.. code-block:: none
     68
     69    cd $HOME/quick-start/src
     70    curl https://ftp.rtems.org/pub/rtems/releases/5/5.1.0/rtems-5.1.0.tar.xz | tar xJf -
     71
     72.. _QuickStartSources_Git:
     73
     74Git
     75---
     76
     77Alternatively, clone the Git repositories into :file:`$HOME/quick-start/src`.
     78
     79A Git repository clone gives you some flexibility with the added complexity of
     80needing to use a Git branch to build a released version.  With Git you can
     81switch between branches to try out different RTEMS versions and you have access
     82to the RTEMS source history. The RTEMS Project welcomes contributions.  The Git
     83repositories enable you to easily create patches and track local changes.
     84
     85You can clone the Git repository to get all versions of RTEMS including the
     86development head.  Release branches in Git are kept stable however they may
     87differ from a release's source archive.
    2188
    2289.. code-block:: none
     
    2794    git clone git://git.rtems.org/rtems.git
    2895
    29 The :file:`rsb` repository clone contains the
    30 :ref:`RTEMS Source Builder (RSB) <RSB>`.  We clone it into
    31 :file:`rsb` to get shorter paths during the tool suite build.  The
    32 :file:`rtems` repository clone contains the RTEMS sources.  These two
    33 repositories are enough to get started.  There are
    34 `more repositories <https://git.rtems.org>`_ available.
     96The :file:`rsb` repository clone contains the :ref:`RTEMS Source Builder (RSB)
     97<RSB>`.  We clone it into :file:`rsb` to get shorter paths during the tool
     98suite build.  The :file:`rtems` repository clone contains the RTEMS sources.
     99These two repositories are enough to get started.  There are `more repositories
     100<https://git.rtems.org>`_ available.
    35101
    36 Alternatively, you can download the source archives of a released RTEMS
    37 version.
     102Offline Download
     103----------------
     104
     105If you have limited Internet access you can download the source before you
     106start building. If you are permanently connected to the Internet you do not
     107need to do this and the sources will be automatically download on demand when
     108needed.
     109
     110Once the sources have been downloaded you could disconnect your host computer
     111from the Internet.  It is no longer required to work with RTEMS. To download
     112the sources to build the ERC 32 BSP before building run the following commands:
    38113
    39114.. code-block:: none
    40115
    41     mkdir -p $HOME/quick-start/src
    42     cd $HOME/quick-start/src
    43     curl https://ftp.rtems.org/pub/rtems/releases/4.11/4.11.3/rtems-4.11.3.tar.xz | tar xJf -
    44     curl https://ftp.rtems.org/pub/rtems/releases/4.11/4.11.3/rtems-source-builder-4.11.3.tar.xz | tar xJf -
     116    cd $HOME/quick-start/src/rsb/rtems
     117    ../source-builder/sb-set-builder --source-only-download 5/rtems-sparc
    45118
    46 This quick start chapter focuses on working with the Git repository clones
    47 since this gives you some flexibility.  You can switch between branches to try
    48 out different RTEMS versions.  You have access to the RTEMS source history.
    49 The RTEMS Project welcomes contributions.  The Git repositories enable you to
    50 easily create patches and track local changes.  If you prefer to work with
    51 archives of a released RTEMS version, then simply replace the version number 5
    52 used throughout this chapter with the version number you selected, e.g. 4.11.
     119This command should output something like this (omitted lines are denoted by
     120``...``):
     121
     122.. code-block:: none
     123
     124    RTEMS Source Builder - Set Builder, 5.1.0
     125    Build Set: 5/rtems-sparc
     126    ...
     127    download: https://ftp.rtems.org/pub/rtems/releases/5/5.1.0/5.1.0/sources/gcc-7.5.0.tar.xz -> sources/gcc-7.5.0.tar.xz
     128    ...
     129    Build Sizes: usage: 0.000B total: 143.814MB (sources: 143.793MB, patches: 21.348KB, installed 0.000B)
     130    Build Set: Time 0:05:52.617958
     131
     132If you encounter errors, check your internet connection, firewall settings,
     133virus scanners and the availability of the download servers.
  • user/start/tools.rst

    r88dd013 rf672026  
    33.. Copyright (C) 2019 embedded brains GmbH
    44.. Copyright (C) 2019 Sebastian Huber
     5.. Copyright (C) 2020 Chris Johns
    56
    67.. _QuickStartTools:
     
    910======================
    1011
    11 You have chosen an installation prefix and cloned two RTEMS repositories in the
    12 previous sections.  We have chosen :file:`$HOME/quick-start/rtems/5` as the
    13 installation prefix and cloned the repositories in
    14 :file:`$HOME/quick-start/src`.
     12You have chosen an installation prefix, the BSP to build, the tool's
     13architecure and prepared the source for the RSB in the previous sections.  We
     14have chosen :file:`$HOME/quick-start/rtems/5` as the installation prefix, the
     15``erc32`` BSP and the SPARC architecture name of ``sparc-rtems5``, and unpacked
     16the RSB source in :file:`$HOME/quick-start/src`.
    1517
    16 You must select the
    17 :ref:`target architecture <TargetArchitectures>` for which you need a tool
    18 suite.  In this quick start chapter we choose `sparc-rtems5`.  The
    19 `sparc-rtems5` is the tool suite name for the SPARC architecture and RTEMS
    20 version 5.  The tool suite for RTEMS and the RTEMS sources are tightly coupled.
    21 For example, do not use a RTEMS version 5 tool suite with RTEMS version 4.11
    22 sources and vice versa.  We use the RSB in two steps.  The first step is to
    23 download additional sources and patches.  Afterwards, you could disconnect your
    24 host computer from the internet.  It is no longer required to work with RTEMS.
     18The tool suite for RTEMS and the RTEMS sources are tightly coupled.  For
     19example, do not use a RTEMS version 5 tool suite with RTEMS version 4.11
     20sources and vice versa.
    2521
    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 
    31 This 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 
    45 If you encounter errors in the first step, check your internet connection,
    46 firewall settings, virus scanners and the availability of the download servers.
    47 The seconds step is to build and install the tool suite.
     22Build and install the tool suite:
    4823
    4924.. code-block:: none
     
    5328
    5429This command should output something like this (omitted lines are denoted by
    55 ...):
     30...). The build host appears as part of the name of the package being
     31built. The name you see may vary depending on the host you are using:
    5632
    5733.. code-block:: none
    5834
    59     RTEMS Source Builder - Set Builder, 5 (98588a55961a)
    60     warning: exe: absolute exe found in path: (__unzip) /usr/local/bin/unzip
     35    RTEMS Source Builder - Set Builder, 5.1.0
    6136    Build Set: 5/rtems-sparc
    6237    ...
    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
     38    config: tools/rtems-binutils-2.34.cfg
     39    package: sparc-rtems5-binutils-2.34-x86_64-freebsd12.1-1
     40    building: sparc-rtems5-binutils-2.34-x86_64-freebsd12.1-1
     41    sizes: sparc-rtems5-binutils-2.34-x86_64-freebsd12.1-1: 305.866MB (installed: 29.966MB)
     42    cleaning: sparc-rtems5-binutils-2.34-x86_64-freebsd12.1-1
     43    reporting: tools/rtems-binutils-2.34.cfg -> sparc-rtems5-binutils-2.34-x86_64-freebsd12.1-1.txt
     44    reporting: tools/rtems-binutils-2.34.cfg -> sparc-rtems5-binutils-2.34-x86_64-freebsd12.1-1.xml
     45    config: tools/rtems-gcc-7.5.0-newlib-fbaa096.cfg
     46    package: sparc-rtems5-gcc-7.5.0-newlib-fbaa096-x86_64-freebsd12.1-1
     47    building: sparc-rtems5-gcc-7.5.0-newlib-fbaa096-x86_64-freebsd12.1-1
    6848    ....
    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
     49    Build Sizes: usage: 5.684GB total: 1.112GB (sources: 143.803MB, patches: 21.348KB, installed 995.188MB)
     50    Build Set: Time 0:21:35.626294
    7151
    72 In case the seconds step was successful, you can check if for example the cross
    73 C compiler works with the following command:
     52Once the build has successfully completed you can check if the cross C compiler
     53works with the following command:
    7454
    7555.. code-block:: none
    7656
    77     $HOME/quick-start/rtems/5/bin/sparc-rtems5-gcc --version --verbose
     57    $HOME/quick-start/rtems/5/bin/sparc-rtems5-gcc --version
    7858
    79 This command should output something like below.  In this output the actual
    80 prefix path was replaced by ``$PREFIX``.  The ``compiled by`` line depends on
    81 the native C++ compiler of your host computer.  In the output you see the Git
    82 hash of the RSB.  This helps you to identify the exact sources which were used
    83 to build the cross compiler of your RTEMS tool suite.
     59This command should output something like below.  The version informtion helps
     60you to identify the exact sources used to build the cross compiler of your
     61RTEMS tool suite.  In the output you see the version of RTEMS or the hash from
     62the RSB repository if you are building using a Git repository clone. The Newlib
     63hash is the version of Newlib in the RTEMS's github
     64`sourceware-mirror-newlib-cygwin
     65<https://github.com/RTEMS/sourceware-mirror-newlib-cygwin>`_ repository. The
     66``sources`` and ``patches`` directories created by the RSB contain all the
     67source code used.
    8468
    8569.. code-block:: none
    8670
    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)
     71    sparc-rtems5-gcc (GCC) 7.5.0 20191114 (RTEMS 5, RSB 5.1.0, Newlib fbaa096)
    9172    Copyright (C) 2017 Free Software Foundation, Inc.
    9273    This is free software; see the source for copying conditions.  There is NO
     
    9475
    9576
    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
    10477
    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'
     78Add ``--verbose`` to the GCC command for the the verbose version details.
Note: See TracChangeset for help on using the changeset viewer.