Search code examples
compiler-flagsyocto

How to add global CXX compiler flag to yocto build


It seems something obvious to me, but I couldn't find any solution. Suppose I want to add or change a compiler flag/option which applies to all yocto recipes. It is possible to add a global flag somewhere, without changing the recipes ?


Solution

  • You can add global compiler options for Yocto builds in poky/meta/conf/bitbake.conf. After adding options, check the bitbake environment using the command bitbake -e

    cat poky/meta/conf/bitbake.conf
    
    ...
    ...
    ##################################################################
    # Build flags and options.
    ##################################################################
    
    export BUILD_CPPFLAGS = "-isystem${STAGING_INCDIR_NATIVE}"
    BUILDSDK_CPPFLAGS = "-isystem${STAGING_INCDIR}"
    export CPPFLAGS = "${TARGET_CPPFLAGS}"
    
    export BUILD_CFLAGS = "${BUILD_CPPFLAGS} ${BUILD_OPTIMIZATION}"
    BUILDSDK_CFLAGS = "${BUILDSDK_CPPFLAGS} ${BUILD_OPTIMIZATION}"
    export CFLAGS = "${TARGET_CFLAGS}"
    export TARGET_CFLAGS = "${TARGET_CPPFLAGS} ${SELECTED_OPTIMIZATION}"
    
    export BUILD_CXXFLAGS = "${BUILD_CFLAGS}"
    export CXXFLAGS = "${TARGET_CXXFLAGS}"
    export TARGET_CXXFLAGS = "${TARGET_CFLAGS}"