Multi-architecture support

Architecture-specific toolchain

# Set target architecture (default: x86_64)
if(NOT DEFINED QNX_ARCH)
    set(QNX_ARCH " x86_64")  # Options: armv7, aarch64, x86_64
endif()

if(QNX_ARCH STREQUAL "armv7")
    set(CMAKE_SYSTEM_PROCESSOR arm)
    set(QNX_COMPILER_FLAGS "-Vgcc_ntoarmv7le")
elseif(QNX_ARCH STREQUAL "aarch64")
    set(CMAKE_SYSTEM_PROCESSOR aarch64)
    set(QNX_COMPILER_FLAGS "-Vgcc_ntoaarch64le")
elseif(QNX_ARCH STREQUAL "x86_64")
    set(CMAKE_SYSTEM_PROCESSOR x86_64)
    set(QNX_COMPILER_FLAGS "-Vgcc_ntox86_64")
endif()

Building for multiple architectures

# For ARMv7
cmake -DQNX_ARCH=armv7 -DCMAKE_TOOLCHAIN_FILE=qnx-toolchain.cmake -B build_arm

# For x86_64
cmake -DQNX_ARCH=x86_64 -DCMAKE_TOOLCHAIN_FILE=qnx-toolchain.cmake -B build_x86
Page updated: