2.2. Choose an Installation Prefix#
You will see the term prefix referred to throughout this
documentation and in a wide number of software packages you can download from
the internet. It is also used in the
GNU Coding Standard.
A prefix is the path on your host computer a software package is installed
under. Packages that have a prefix will place all parts under the prefix
path. Packages for your host computer typically use a default prefix of
/usr/local
on FreeBSD and Linux.
You have to select a prefix for your installation. You will build and install the RTEMS tool suite, an RTEMS kernel for a BSP, and you may build and install third party libraries. You can build all the parts as a stack with a single prefix or you can separate various parts by providing different prefixes to each part as it is built. Using separate prefixes is for experienced RTEMS users.
Do not select a prefix that is under the top of any of the source trees. The prefix collects the install output of the various build steps you take in this guide and need to be kept separate from the sources used.
The RTEMS tool suite consists of a cross tool chain (Binutils, GCC, GDB, Newlib, etc.) for your target architecture and RTEMS tools provided by the RTEMS Project. The RTEMS Tools are a toolkit that help create the RTEMS ecosystem and help support the building of embedded real-time applications and systems. The RTEMS tool chain changes less often than the RTEMS kernel. One method of working with development releases is to have a separate prefix for the RTEMS tools and a different one for the RTEMS kernel. You can then update each without interacting with the other. You can also have a number of RTEMS versions available to test with.
You build and install the tool suite with the RTEMS Source Builder (RSB). By default, the RSB will start the prefix path with a host operating
system specific path plus rtems
, and the RTEMS version, e.g.
/opt/rtems/6
on Linux, and /usr/local/rtems/6
on FreeBSD and
macOS. Placing the RTEMS version number in the path lets you manage and
migrate RTEMS versions as they are released. It is best to
have a prefix for each different version of RTEMS you are using. If you are
using RTEMS in production it is not a good idea to install a development
version of over the top by using the same prefix. A separate prefix for each
version avoids this.
It is strongly recommended to run the RSB as a normal user and not with
root privileges (also known as super user or Administrator). You have to
make sure that your normal user has sufficient privileges to create files and
directories under the prefix. For example, you can create a directory
/opt/rtems
and give it to a developer group with read, write, and
execute permissions. Alternatively, you can choose a prefix in your home
directory, e.g. $HOME/rtems/6
or with a project-specific component
$HOME/project-x/rtems/6
. For more ideas, see the project
sandboxing section. In this quick start chapter, we will
choose $HOME/quick-start/rtems/6
for the RTEMS tool suite prefix.
Warning
The prefix must not contain space characters.