Changeset 86518bd in rtems-docs for user/hosts/windows.rst

07/04/16 02:30:09 (6 years ago)
Chris Johns <chrisj@…>
4.11, 5, am, master

Reorganisse the User Manual to make it easier to navigate.

1 moved


  • user/hosts/windows.rst

    r6d7a4d2 r86518bd  
    44.. comment: All rights reserved.
    6 .. _development-hosts:
    8 Development Hosts
    9 =================
    10 .. index:: Hosts
    12 RTEMS applications are developed using cross-development tools running on a
    13 host computer, typically your desktop or a special build server. All RTEMS
    14 tools and runtime libraries are built from source on your host machine. The
    15 RTEMS Project does not maintain binary builds of the tools. This may appear be
    16 the opposite to what you normally experience with host operating systems, and
    17 it is, however this approach works well. RTEMS is not a host operating system
    18 and it is not a distrbution. Providing binary packages for every possible host
    19 operating system is too big a task for the RTEMS Project and it is not a good
    20 use of core developer time. Their time is better spent making RTEMS better and
    21 faster.
    23 Developer Computer
    24 ------------------
    26 The rule for selecting a computer for a developer is `more is better` but we do
    27 understand there are limits. Projects set up different configurations and what
    28 is described here is not an approved set up, rather it is a guide. Some
    29 projects have a suitable development machine per developer while others set up
    30 a tightly controlled central build server. RTEMS is flexible and lets you
    31 engineer a development environment that suites you. The basic specs are:
    33 - Multicore processor
    34 - 8G bytes RAM
    35 - 256G harddisk
    37 RTEMS makes no demands on graphics.
    39 If you are using a VM or your host computer is not a fast modern machine do not
    40 be concerned. The tools may take longer to build than faster hardware however
    41 building tools is something you do once. Once the tools and RTEMS is built all
    42 your time can be spent writing and developing your application. Over an hour
    43 does happen and for the ARM architecture with all BSPs it can be many hours.
    45 Host Software
    46 -------------
    48 A wide range of host operating systems and hardware can be used. The host
    49 operating systems supported are:
    51 - Linux
    52 - FreeBSD
    53 - NetBSD
    54 - Apple OS X
    55 - Windows
    56 - Solaris
    58 The functionality on a POSIX operating such as Linux and FreeBSD is similar and
    59 most features on Windows are supported but you are best to ask on the
    60 :r:list:`users` if you have a specific question.
    62 We recommend you maintain your operating system by installing any updates.
    64 POSIX Hosts
    65 -----------
    67 .. sidebar:: *GDB and Python*
    69    RTEMS uses Python in GDB to aid debugging which means GDB needs to be built
    70    with Python development libraries. Please check the RSB documentation and
    71    install the packages specified for your host. Make sure a python development
    72    package is included.
    74 POSIX hosts are most Unix operating systems such as Linux, FreeBSD and
    75 NetBSD. RTEMS development works well on Unix and can scale from a single user
    76 and a desktop machine to a team with decentralised or centralised development
    77 infrastructure. The RTEMS project provides you with the development tools and
    78 aids to help you create an environment that matches your project's needs. The
    79 RTEMS Project's aim is to give you complete freedom to decide on the languages
    80 used in your project, which version control system, and the build system for
    81 your application.
    83 The following are a few ways you can set up a suitable environment. You are not
    84 limited to what is present here. A common factor that defines the final
    85 location of tools and projects is the place you have suitable storage. The
    86 following set ups assume suitable disk space and disk performance.
    88 Administrator Access
    89 ~~~~~~~~~~~~~~~~~~~~
    91 You either have ``root`` access to your host development machine or you do
    92 not. Some users are given hardware that is centrally managed. If you do not
    93 have ``root`` access you can create your work environment in your home
    94 directory. You could use a prefix of :file:`$HOME/development/rtems` or
    95 :file:`$HOME/rtems`. Note, the ``$HOME`` environment variable can be
    96 substituted with ``~``.
    98 RTEMS Tools and packages do not require ``root`` access
    99 to be built and we encourage you to not build the tools as ``root``. If you
    100 need to control write access then it is best to manage this with groups
    101 assigned to users.
    103 If you have ``root`` access you can decide to install the tools under any
    104 suitable prefix. This may depend on the hardware in your host development
    105 machine. If the machine is a centralised build server the prefix may be used to
    106 separate production versions from the test versions and as just discussed the
    107 prefix paths may have restricted access rights to only those who manage and
    108 have configuration control of the machine.
    110 Apple OS X
    111 ----------
    113 Apple's OS X is fully supported. You need to download and install a recent
    114 version of the Apple developer application Xcode. Xocde is available in the App
    115 Store. Make sure you install the Command Line Tools add on available for
    116 download within Xcode and once installed open a Terminal shell and enter the
    117 command ``cc`` and accept the license agreement.
    119 The normal prefix when working on OS X as a user is under your home directory.
    120 Prefixes of :file:`$HOME/development/rtems` or :file:`$HOME/rtems` are
    121 suitable.
    1236.. _microsoft-windows:
    1258Microsoft Windows
    126 -----------------
    12811RTEMS supports Windows as a development host and the tools for most
    16144.. _windows-path-length:
    163 Path Length
    164 ~~~~~~~~~~~
     46Windows Path Length
    16649Windows path length is limited and can cause problems when building the
    18063Parallel Builds with Make
    181 ~~~~~~~~~~~~~~~~~~~~~~~~~
    18366The MSYS2 GNU ``make`` has problems when using the `jobs` option. The RSB
    18871POSIX Support
    189 ~~~~~~~~~~~~~
    19174Building the RTEMS compilers, debugger, the RTEMS kernel and a number of other
    207 ~~~~~~
    20992We need Python to build the tools as the RSB is written in Python and we need
    21598We cannot use the Python executables created by the Python project (
    21699as they are built by Microsoft's C (MSC) compiler. Linking the MSC Python
    217 libraries with the MinGW64 executables is not easy and MSYS provided us with a
     100libraries with the MinGW64 executables is not easy and MSYS provides us with a
    218101simple solution so we do not support linking MSC libraries.
    220 MSYS2 provides two types and versions of Python executables, MinGW and MSYS and
    221 Python version 2 and 3. For Windows we need the MinGW executable so we have
     103MSYS2 provides two types and two versions of Python executables, MinGW and MSYS
     104and Python version 2 and 3. For Windows we need the MinGW executable so we have
    222105suitables libraries and we have to have Python version 2 because on Windows GDB
    223106only builds with Python2.
     113.. _microsoft-windows-installation:
    230115Installing MSYS2
    231 ~~~~~~~~~~~~~~~~
    233118MSYS2 is installed on a new machine using the MSYS2 installer found on
    268153.. note::
    270 The actual output provided may vary due to changes in the dependent packages or
    271 newer package versions.
     155  The actual output provided may vary due to changes in the dependent packages
     156  or newer package versions.
    273158Install the packages using ``pacman``:
Note: See TracChangeset for help on using the changeset viewer.