Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/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_Build - Fatal编程技术网

如何使用cmake构建大型库?

如何使用cmake构建大型库?,cmake,build,Cmake,Build,我有很多源文件夹,其中包含.cpp和.h文件。每个文件夹都包含CMakeLists.txt文件,但包含.h标题文件的文件夹除外。我从几个方面看问题 第一种方法是利用添加库(myLib1 STATIC/link/to/sources/somefile.cpp/link/to/sources/interfaces/somefile.h)。但我认为,用这种方法,当这不是一个好方法时,我会有很多字符串。因为我有很多相互关联的文件 同样,使用set(HEADERS/link1/link2…)和set(S

我有很多源文件夹,其中包含
.cpp
.h
文件。每个文件夹都包含
CMakeLists.txt
文件,但包含
.h
标题文件的文件夹除外。我从几个方面看问题

  • 第一种方法是利用
    添加库(myLib1 STATIC/link/to/sources/somefile.cpp/link/to/sources/interfaces/somefile.h)
    。但我认为,用这种方法,当这不是一个好方法时,我会有很多字符串。因为我有很多相互关联的文件

  • 同样,使用
    set(HEADERS/link1/link2…)
    set(SOURCES/link3…)
    add_库(myLib${HEADERS}${SOURCES})时除外


  • 我认为这两种方法都不合适。我不知道如何将带有库的文件夹连接到我的项目中,因为如果使用上述方法包含此文件夹,则需要很长时间,而且不美观

    您不必列出标题。您是否询问如何将给定目录中的所有文件指定为库的源文件?如果是,请参见以下问题:。