Reading time: | 15 min |
Last updated: | 20 Aug 2025 |
Reading time: |
15 min |
Last updated: |
20 Aug 2025 |
This guide is intended to get you up and running with this tool quickly with the most common settings. For a thorough review of all options, refer to the official documentation.
Arm Fixed Virtual Platforms (FVPs) were available as a library of ready to use platforms (and as a component of Arm Development Studio) up until version 11.28.
From 11.29 onwards the FVPs are provided solely as part of Arm Development Studio.
This install guide is only applicable to the legacy FVP library.
See the Arm Development Studio Install Guide and the Introduction to FVPs documentation.
You can download the FVP library installer from the Product Download Hub .
Linux (AArch64 and x86) and Windows (x86 only) hosts are supported.
For more information about the Product Download Hub, refer to the Product Download Hub installation guide .
Unzip the downloaded installation archive.
It is easiest to run the installation wizard (setup.exe
), and follow on-screen instructions.
Unpack the downloaded package, and install the FVP library with the supplied script.
./FVP_ARM_Std_Library.sh --i-agree-to-the-contained-eula --no-interactive
For full list of available options, use:
./FVP_ARM_Std_Library.sh --help
FVPs are license managed. License setup instructions are available in the Arm Licensing install guide .
To verify everything is working OK, navigate to the install directory, and launch any of the supplied FVP executables. No additional command options are needed.
For example:
./FVP_MPS2/FVP_MPS2_Cortex-M3
The FVP will launch, and output text in a terminal similar to:
telnetterminal0: Listening for serial connection on port 5000
telnetterminal1: Listening for serial connection on port 5001
telnetterminal2: Listening for serial connection on port 5002
A visualization of the FVP will also be displayed.
Terminate the FVP with Ctrl+C
.
You might run into an enablement issue related to the stack:
cannot enable executable stack as shared object requires: Invalid argument
This stems from the status of the the exec flag, a security feature which helps prevent certain types of buffer overflow attacks. FVPs use just-in-time compilation and require an executable stack to function properly.
You can a workaround this error using execstack
on each of the runtime binaries in the error trace.
execstack -c <binary>
How would you rate this tool quick-install guide?
What is the primary reason for your feedback ?
Thank you! We're grateful for your feedback.