CPU ISA Level Is Lower Than Required Error When Cross Compiling C/C++ Code for NI Linux Real-Time Targets

Updated Jun 15, 2026

Reported In

Operating System

  • LabVIEW Real-Time (NI Linux Real-Time)

Programming Language

  • C
  • C++

Issue Details

I am currently working on creating an application for my NI Linux Real-Time (RT) target using C++. For this purpose, I have installed all the necessary components on a Linux Desktop PC to perform a cross-compilation process, based on the NI Linux Real-Time Cross Compiling: Using the NI Linux Real-Time Cross Compile Toolchain with Visual Studio Code tutorial. When it is time to run the compiled application on the RT controller, I receive the following error message:

CPU ISA level is lower than required

Solution

The "CPU ISA level is lower that required" error may occur when the compiled binary you are trying to run requires a higher Instruction Set Architecture (ISA) than what your RT controller's CPU supports. The error can be generated if host system libraries or incorrect compiler configurations are used during the build process.

To resolve this issue, verify the following:

  • Remove host system paths from the build configuration:
    1. Open the CMakeLists.txt file 
    2. Remove any references to host PC library paths such as /usr/include or /usr/lib/x86_64-linux-gnu.
    3. Ensure only paths from the NI Linux RT toolchain are used. 
  • If your application uses shared libraries (SO files), ensure you are retrieving them directly from the RT controller or the ones provided with the NI Linux RT toolchain. 
  • Confirm the project uses the compiler included with the NI Linux RT toolchain and avoid mixing the host PC and target compilers. 
  • In the  c_cpp_properties.json file, configure IntelliSense to use the NI Linux RT cross-compiler, and ensure it does not point to the host compiler. 

For more information on how to correctly configure Visual Studio Code for building NI Linux Real-Time C/C++ code, including the points mentioned above, please refer to the NI Linux Real-Time Cross Compiling: Using the NI Linux Real-Time Cross Compile Toolchain with Visual Studio Code tutorial. 

Additional Information

An Instruction Set Architecture (ISA) can be defined as an abstract interface between a processor's hardware and the software it runs. It defines the supported instructions, data types, registers,  memory access models, and I/O handling, enabling software compatibility across different implementations of a processor family.