【问题标题】:cmake response files Unix Makefile generator vs ninja generatorcmake 响应文件 Unix Makefile 生成器与 ninja 生成器
【发布时间】:2016-01-13 08:20:08
【问题描述】:

CMake 3.4.1 正在使用响应文件来缩短与 ninja 而不是 unix makefile 链接的命令行长度。我正在使用 IAR 嵌入式工具链进行交叉编译,它不支持给定的响应文件语法(即@CMakeFiles/proj.rsp)。我更喜欢使用 ninja 构建系统,因为它更快,但我需要一个解决此响应文件的方法。我需要禁用响应文件生成或让它使用我的工具链支持的语法(即 -f 文件名)。有没有办法做到这两点?

【问题讨论】:

    标签: cmake ninja


    【解决方案1】:

    我发现这对我有用,尽管可能有更聪明的方法来做这件事。如果命令行足够短,如果构建生成器不使用响应文件,我不会感到惊讶。

    if ( ${CMAKE_GENERATOR} MATCHES "Ninja" )
       set(CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_LINKER> -f CMakeFiles/${PROJECT_NAME}.rsp <LINK_FLAGS> <LINK_LIBRARIES> -o <TARGET>")
    endif()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-10-23
      • 2014-08-16
      • 1970-01-01
      • 1970-01-01
      • 2010-12-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多