代码之家  ›  专栏  ›  技术社区  ›  claf

CMake:如何在CMakeLists.txt中使用bash命令

  •  22
  • claf  · 技术社区  · 17 年前

    我想知道如何在CMakeLists.txt中使用bash命令。我想要的是通过以下方式获取检索到的处理器数量:

    export variable=`getconf _NPROCESSORS_ONLN`
    

    并使用以下方法将NB_处理器设置为变量:

    SET (NB_PROCESSOR variable)
    

    所以我的问题是如何在CMakeLists.txt中使用getconf命令,以及如何在CMake SET命令中使用结果(存储在变量中)?

    2 回复  |  直到 17 年前
        1
  •  19
  •   richq luc    17 年前

    这似乎起到了作用,并保存了“集合”。

    execute_process(COMMAND getconf  _NPROCESSORS_ONLN
                    OUTPUT_VARIABLE NB_PROCESSOR)
    
        2
  •  8
  •   Jiang Bian    17 年前

    使用EXEC_PROGRAM命令,然后使用集合的缓存选项 用于添加值的SET命令。大概是这样的:

    IF(NOT GTK_PKG_FLAGS)
       EXEC_PROGRAM(pkg-config ARGS --cflags --libs gtkmm
                    OUTPUT_VARIABLE GTK_PKG_FLAGS)
       SET(GTK_PKG_FLAGS "${GTK_PKG_FLAGS}" CACHE STRING "GTK Flags")
    ENDIF(NOT GTK_PKG_FLAGS)
    SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GTK_PKG_FLAGS}")
    

    http://www.cmake.org/pipermail/cmake/2005-January/006051.html

    推荐文章