Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[MSYS2] CMake+Ninja Fix arm-none-eabi-ar: Argument list too long
This issue is related to the Arm toolchain for Windows which is available for x86 host architecture only (compatible with x86_64) Windows (mingw-w64-i686) hosted cross toolchains AArch32 bare-metal target (arm-none-eabi) Issue /bin/sh: line 1: /home/nuttx/nuttxnew/tools/gcc-arm-none-eabi/bin/arm-none-eabi-ar: Argument list too long On Windows, arm-none-eabi-ar can only accept strings up to a maximum length of 32,768 characters. We could suppress the 32K include string limitation by setting the CMake variable CMAKE_NINJA_FORCE_RESPONSE_FILE to ON. This is unfortunately not enough!!! ): In the build phase this error comes out $ cmake --build build [2/1025] Building ASM object arch/CMakeFiles/arch.dir/arm/src/armv7-m/arm_exception.S.obj FAILED: arch/CMakeFiles/arch.dir/arm/src/armv7-m/arm_exception.S.obj /home/nuttx/nuttxnew/tools/gcc-arm-none-eabi/bin/arm-none-eabi-gcc.exe @arch/CMakeFiles/arch.dir/arm/src/armv7-m/arm_exception.S.obj.rsp -MD -MT arch/CMakeFiles/arch.dir/arm/src/armv7-m/arm_exception.S.obj -MF arch/CMakeFiles/arch.dir/arm/src/armv7-m/arm_exception.S.obj.d -o arch/CMakeFiles/arch.dir/arm/src/armv7-m/arm_exception.S.obj -c /home/nuttx/nxninja/nuttx/arch/arm/src/armv7-m/arm_exception.S C:/msys64/home/nuttx/nxninja/nuttx/arch/arm/src/armv7-m/arm_exception.S:42:10: fatal error: nuttx/config.h: No such file or directory 42 | #include <nuttx/config.h> | ^~~~~~~~~~~~~~~~ compilation terminated. The Workround I found to solve this problem is to overwrite the responsible file flag CMAKE_${lang}_RESPONSE_FILE_FLAG with $DEFINES $INCLUDES $FLAGS Maybe there is a better solution but this one it works. :)
- Loading branch information