如何正确设置CMake项目?

莱尔·康威

虽然很容易找到有关如何使用CMake的表面信息,但是如何真正正确地使用CMake的信息似乎很难找到。在大小合适的CMake项目(一个可执行文件,该可执行文件使用的一个或多个静态库,静态库使用的一个或多个外部依赖项)中,文件夹和CMakeList.txt文件应如何排序?哪些CMakeList.txt文件应具有哪些命令?

格子呢骆驼

学习其他项目是学习如何有效使用CMake的一个好方法。LLVM及其子项目就是一个很好的例子。

通常,良好的编码习惯可以转换为CMake良好习惯。您需要模块化,清晰的样式和灵活性。

这样的一个示例可能是具有在src目录内构建可执行文件的规则,然后在根项目文件夹中使用该目标。像这样:

-my_proj
|
----CMakeLists.txt //contains directives for top-level dependencies and linking, includes subfolders
----src
    |
    ----CMakeLists.txt //contains definition of your main executable target
    ----internal_lib
        |
        ----CMakeLists.txt //contains definition of your internal static libraries

my_proj / CMakeLists.txt

add_subdirectory(src)
find_package (Threads REQUIRED) #find pthreads package
target_link_libraries (my_exe my_lib ${CMAKE_THREAD_LIBS_INIT}) #link against pthreads and my_lib

my_proj / src / CMakeLists.txt

add_subdirectory(internal_lib)
add_executable(my_exe my_source1.cpp mysource2.cpp)

my_proj / src / internal_lib / CMakeLists.txt

add_library(my_lib my_lib_source1.cpp my_lib_source2.cpp)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

cmake:如何正确设置外部项目中make之前的变量?

来自分类Dev

如何为cmake项目设置Eclipse?

来自分类Dev

如何为模块化项目正确创建CMake文件

来自分类Dev

将yaml-cpp添加到现有项目时正确设置CMake变量

来自分类Dev

为什么CMake使用Opencv无法正确设置包含目录(MSVC 2010项目)

来自分类Dev

正确的cmake设置以包含标题

来自分类Dev

如何使用凉亭组件文件的正确路径设置节点项目

来自分类Dev

如何为简单的C项目正确设置TravisCI

来自分类Dev

如何在SelectListItem中正确设置所选项目?

来自分类Dev

如何在cordova项目中正确设置URI?

来自分类Dev

如何以正确的方式设置 flexbox 项目的样式

来自分类Dev

CMake:如何正确设置新的工具链,以避免出现“ CMake未知系统”消息?

来自分类Dev

正确设置Eclipse插件项目

来自分类Dev

如何设置cmake策略?

来自分类Dev

使用CMake正确设置链接器标志

来自分类Dev

在CMake中,如何将C#项目的外部引用设置为特定版本?

来自分类Dev

如何在使用ExternalProject_Add添加的外部项目上设置CMake策略和属性

来自分类Dev

如何正确设置布局?

来自分类Dev

如何正确设置约束?

来自分类Dev

如何正确设置相机

来自分类Dev

如何设置正确反应

来自分类Dev

如何正确设置路由?

来自分类Dev

如何正确设置GridView?

来自分类Dev

如何设置CMake搜索路径

来自分类Dev

如何设置cmake的包含顺序

来自分类Dev

如何使用单独的App和Qt Quick Test正确设置子目录项目?

来自分类Dev

如何为Django项目正确设置两个.git存储库

来自分类Dev

如何在Powerpoint模板中正确设置和使用项目符号列表?

来自分类Dev

如何正确设置从Cascades中的数据模型中删除项目的动画效果?

Related 相关文章

  1. 1

    cmake:如何正确设置外部项目中make之前的变量?

  2. 2

    如何为cmake项目设置Eclipse?

  3. 3

    如何为模块化项目正确创建CMake文件

  4. 4

    将yaml-cpp添加到现有项目时正确设置CMake变量

  5. 5

    为什么CMake使用Opencv无法正确设置包含目录(MSVC 2010项目)

  6. 6

    正确的cmake设置以包含标题

  7. 7

    如何使用凉亭组件文件的正确路径设置节点项目

  8. 8

    如何为简单的C项目正确设置TravisCI

  9. 9

    如何在SelectListItem中正确设置所选项目?

  10. 10

    如何在cordova项目中正确设置URI?

  11. 11

    如何以正确的方式设置 flexbox 项目的样式

  12. 12

    CMake:如何正确设置新的工具链,以避免出现“ CMake未知系统”消息?

  13. 13

    正确设置Eclipse插件项目

  14. 14

    如何设置cmake策略?

  15. 15

    使用CMake正确设置链接器标志

  16. 16

    在CMake中,如何将C#项目的外部引用设置为特定版本?

  17. 17

    如何在使用ExternalProject_Add添加的外部项目上设置CMake策略和属性

  18. 18

    如何正确设置布局?

  19. 19

    如何正确设置约束?

  20. 20

    如何正确设置相机

  21. 21

    如何设置正确反应

  22. 22

    如何正确设置路由?

  23. 23

    如何正确设置GridView?

  24. 24

    如何设置CMake搜索路径

  25. 25

    如何设置cmake的包含顺序

  26. 26

    如何使用单独的App和Qt Quick Test正确设置子目录项目?

  27. 27

    如何为Django项目正确设置两个.git存储库

  28. 28

    如何在Powerpoint模板中正确设置和使用项目符号列表?

  29. 29

    如何正确设置从Cascades中的数据模型中删除项目的动画效果?

热门标签

归档