4.4. Apple macOS¶
Apple’s macOS is supported. You need to download and install a recent
version of the Apple developer application Xcode. Xcode is available
in the App Store. Make sure you install the Command Line Tools add on
available for download within Xcode and once installed open a Terminal
shell and enter the command cc
and accept the license agreement.
The normal prefix when working on macOS as a user is under your home
directory. Prefixes of $HOME/development/rtems
or
$HOME/rtems
are suitable.
Choose an Installation Prefix details using Prefixes to manage the installation.
Homebrew and Macports should work but are not tested by the project as they are rolling releases making it difficult to reproduce any problems there may be. We recommend reaching out to those projects for support.
Intel and Apple silicon is supported.
4.4.1. Python¶
Building GDB requires the installation of Python’s development
libraries. Building GDB includes the Python runtime header
Python.h
and linking to the Python runtime libraries. The RSB
detects a valid header and libraries before starting a GDB
build.
It is recommended you run the RSB in a Python virtual environment. A
virtual environment manages paths for you, provides a python
executable mapped to the version the virtual environment is built with
and a command to find the appropiate runtime header and library files
GDB needs. Virtual environments make it easier to update Python to a
newer version if this is needed.
Apple has removed support for Python’s development libraries from recent versions of MacOS as users can manage Python using the installer packages provided by the Python project.
To install:
Download a Python installer for MacOS from https://www.python.org/.
Run the installer and install Python.
Open a terminal and update your shell profile using the command Python provides. For Python 3.12 the command is:
/Applications/Python\ 3.12/Update\ Shell\ Profile.command
Check with:
% type python3.12 python3.12 is /Library/Frameworks/Python.framework/Versions/3.12/bin/python3.12
Create a virtual environment:
mkdir $HOME/development/rtems cd $HOME/development/rtems python3.12 -m venv py3.12
Activate the virtual environment:
. $HOME/development/rtems/py3.12/bin/activate
You are now ready to the build the tools within the virtual environment.
4.4.2. Sonoma¶
The RSB is supported on Sonoma and Applie silicon.
4.4.3. Ventura¶
The RSB is supported on Ventura and Intel silicon.
4.4.4. Monterey¶
The RSB is supported on Ventura and Intel silicon.
4.4.5. Catalina¶
In the macOS Catalina 10.15 Release Notes Apple deprecated several scripting language runtimes such as Python 2.7. See also Xcode 11 Release Notes. Due to the deprecated Python 2.7 support, we recommend to install and use the latest Python 3 release from python.org.
4.4.6. Sierra¶
The RSB works on Sierra with the latest Xcode.
4.4.7. Mavericks¶
The RSB works on Mavericks and the GNU tools can be built for RTEMS using the
Mavericks clang LLVM tool chain. You will need to build and install a couple of
packages to make the RSB pass the sb-check
. These are CVS and XZ. You can get
these tools from a packaging tool for macOS such as MacPorts or HomeBrew.
I do not use third-party packaging on macOS and prefer to build the packages from
source using a prefix of /usr/local
. There are good third-party packages around
however they sometimes bring in extra dependence and that complicates my build
environment and I want to know the minimal requirements when building
tools. The following are required:
- . The XZ package’s home page is http://tukaani.org/xz/ and I use version
5.0.5. XZ builds and installs cleanly.