Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用CMake生成多个代码生成器生成配置_Cmake_Code Composer - Fatal编程技术网

使用CMake生成多个代码生成器生成配置

使用CMake生成多个代码生成器生成配置,cmake,code-composer,Cmake,Code Composer,我的目标是使用脚本/CMake创建“调试”构建配置和“发布”构建配置,可以在CodeComposer Studio的UI中切换(使用“构建配置->设置活动…”选项) 目前, 运行一个脚本,该脚本使用所需的命令(工具链等)运行CMake。生成一个CodeComposer Studio项目(如CMakeLists.txt中所述) CCS项目导入CCS 问题是,这只会生成“调试”生成配置。是否可以将命令添加到CMakeLists.txt,或添加到cmake命令行,甚至添加到允许生成多个构建配置的ccs

我的目标是使用脚本/CMake创建“调试”构建配置和“发布”构建配置,可以在CodeComposer Studio的UI中切换(使用“构建配置->设置活动…”选项)

目前,

  • 运行一个脚本,该脚本使用所需的命令(工具链等)运行CMake。生成一个CodeComposer Studio项目(如CMakeLists.txt中所述)
  • CCS项目导入CCS
  • 问题是,这只会生成“调试”生成配置。是否可以将命令添加到CMakeLists.txt,或添加到cmake命令行,甚至添加到允许生成多个构建配置的ccs命令行


    这两者之间的唯一区别基本上是定义NDEBUG,并可能改变优化级别。

    我有同样的问题……然后意识到我是4年前最初提出这个问题的人!不管怎样,我找到了一种方法:

    使用CodeComposer,创建您希望的生成配置。完成后,将.cproject文件复制到“模板”中的cproject.in。CMake将使用此模板为任何未来的CMake构建生成相同的.cproject。确保用正确的cmake变量替换任何硬编码值(例如:项目名称)

    对我来说,我的CMakeLists.txt名为
    configure_文件(path/to/cproject.in${CMAKE_SOURCE_DIR}/.cproject@ONLY)


    如果CMAKACHE和CMake文件已经存在,请务必删除它们……我相信它们阻止了我看到结果的更改。

    您看到了吗?@user3288829似乎该链接建议了两个单独的CMake命令行选项。这不会导致两个独立的CodeComposer项目文件吗?对不起,我的意思不是让链接专门指向那个答案(被接受的答案实际上要好得多)。我从未使用过CodeComposer,只有VisualStudio和QtCreator。使用这两种工具,您可以在调试版本和发布版本之间来回切换,而无需重新加载/切换项目。使用独立的源代码外目录确实会产生两组构建文件,这是推荐的做法,因此您不必每次在调试和发布之间切换时都重新构建整个项目。您介意发布创建CCS项目的cmakelists.txt吗?这是我要找的东西