如何构建具有 cmake 文件的 c++/c 项目?

Posted

技术标签:

【中文标题】如何构建具有 cmake 文件的 c++/c 项目?【英文标题】:how to build a c++/c project that has cmake files? 【发布时间】:2020-02-23 12:30:22 【问题描述】:

我知道用 c/c++ 编写代码。但我没有语言方面的专业经验。所以我不知道构建应用程序的最佳实践。

我阅读了一些关于 CMake 的文章。我理解他们。但我仍然不知道应该如何处理一个包含 CMake 文件、cmakelists.txt、make 文件夹的 c++/c 项目。

例如,github project 项目有 main.CPP 文件,也有 main.c 文件。它们都有主循环。我还看到了 CMake 文件。我知道我应该编译它们。当我看到类似例子的项目时,我应该怎么想,我应该遵循哪些步骤?

【问题讨论】:

通常采用相同的方法。在相对于源的路径中创建一个构建文件夹。将目录更改为该构建文件夹。使用源的相对路径运行 cmake,然后使用您的构建系统使用生成的 makefile 或项目文件进行构建。这可能有助于概念:https://ecrafter.wordpress.com/2012/04/24/cmake-tutorial-part-3/ 项目告诉你这样做:https://github.com/dirkvdb/ffmpegthumbnailer/blob/master/INSTALL 【参考方案1】:

您可以简单地调用MakeRelease.sh 脚本来构建发布版本。

如果您想了解如何创建 CMake 和 CMakeLists.txt 文件以及如何使用它们,以下教程适合您。

Tutorial

【讨论】:

【参考方案2】:

如果您使用search this repo for main,您将看到main.c 不再被引用。进一步查看CMakeLists.txt,您可以看到main.cpp 用于构建可执行文件。你不需要学习 CMake 的技巧就能理解这一点。

【讨论】:

以上是关于如何构建具有 cmake 文件的 c++/c 项目?的主要内容,如果未能解决你的问题,请参考以下文章

CMake项目结构:如何正确地将库合并在一起并将它们包含在多个可执行文件中

如何使用CMake构建c++项目

Visual Studio中的c ++并行构建行为[重复]

如何构建一个CMake项目(译)

如何构建 CMake 项目

cmake与make的项目构建快速上手