Software Requirements ===================== As of today the only available normal-world interface for Trusted Services is available trough linux. Building and end-to-end firmware stack requires compiling the Linux Kernel and linux user space applications. This restricts the possible host environments to Linux distributions. While some TS components can be built under Windows this scenario is not mandated by this documentation. The preferred host environment is Ubuntu 18.04. The following tools are required: * CMake, version 3.18.4. (See the `CMake download page`_.) * GNU Make v4.1 or higher. * Git v2.17 or newer. * Python3.6 and the modules listed in ``/requirements.txt``. * GCC supporting the deployment. * `opteesp` and `sp` environments: a host to aarch64 cross-compiler is needed. Please use the compilers specified by the `OP-TEE documentation`_. * `arm-linux` environment: a host to aarch64 linux cross-compiler is needed. Please use the version `9.2-2019.12` of the "aarch64-none-linux-gnu" compiler available from `arm Developer`_. (Note: the compiler part of the OP-TEE build environment works too.) * For `linux-pc` environment use the native version of GCC available in your Linux distribution. * The `AEM FVP`_ binaries if targeting the FVP platform. To build the documentation, please refer to :ref:`Documentation Build Instructions`. -------------- .. _OP-TEE documentation: https://optee.readthedocs.io/en/latest/building/gits/build.html#step-4-get-the-toolchains .. _arm Developer: https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads .. _CMake download page: https://cmake.org/files/v3.18/ .. _`AEM FVP`: https://developer.arm.com/-/media/Files/downloads/ecosystem-models/FVP_Base_RevC-2xAEMvA_11.18_16_Linux64.tgz *Copyright (c) 2020-2023, Arm Limited and Contributors. All rights reserved.* SPDX-License-Identifier: BSD-3-Clause