gpt4 book ai didi

CMake 工作流程?

转载 作者:行者123 更新时间:2023-12-04 14:11:21 25 4
gpt4 key购买 nike

我正在学习 CMake,但在理解其多步骤工作流程时遇到了问题。到目前为止,我的理解是你:

  • 写个 CMakeLists.txt
  • 运行 cmake从子目录生成构建文件(在我的情况下为 Makefile)
  • 运行 make

  • 但是,我不明白您应该如何处理不同的目标(发布与调试)。通过在两个不同的子目录中运行 CMake?

    另外,我不明白你为什么要编辑 CMakeCache.txt (还有一个 GUI 工具)。模拟您将使用 ./configure 完成的工作通过传递不同的选项?

    最佳答案

    你说得很对。 write CMakeLists.txt > cmake > make顺序正确。

    关于不同的配置(调试与发布),您必须区分多配置生成器(Visual Studio、XCode)和单配置生成器(其他一切)。使用多配置生成器,您可以生成一个包含所有配置的构建系统(例如解决方案文件),并在构建时在它们之间进行选择。

    使用单配置生成器,通过生成不同的构建系统,即通过在不同目录中多次运行 CMake(并使用 CMAKE_BUILD_TYPE CMake 变量的不同值)来获得不同的配置。

    所以你会做这样的事情:

    > cd my_project/bld/debug
    > cmake ../../src -DCMAKE_BUILD_TYPE=Debug
    > cd ../release
    > cmake ../../src -DCMAKE_BUILD_TYPE=Release

    关于编辑缓存(通常通过 CMake GUI 或 ccmake ):您又说对了,这在很大程度上对应于将选项传递给 ./configure来自 AutoMake 世界。这将是新下载项目的典型工作流程(使用 CMake GUI):
  • 运行CMake GUI,指向你想要的源目录(输入)和二进制目录(输出)
  • 配置。这将使用项目指定的默认值填充缓存。如果 CMake 无法自动找到项目的某些依赖项,则会以错误结束。
  • 检查缓存,更改您不喜欢的任何值(例如编译选项),填写任何缺少的选项(CMake 找不到的库路径等)
  • 重复步骤 2 和 3,直到您对项目的设置感到满意为止。
  • 生成构建系统。
  • 退出 CMake GUI 并使用适当的构建工具进行构建。
  • 关于CMake 工作流程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31209915/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com