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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.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
Directory cmake最佳实践_Directory_Cmake - Fatal编程技术网

Directory cmake最佳实践

Directory cmake最佳实践,directory,cmake,Directory,Cmake,在使用cmake时,最好在项目根目录中使用一个大型的CMakeLists.txt,还是像在某些地方看到的那样,在每个子目录中都有一个 我认为对于大型项目,在每个目录中都有一个目录会更好。 如果是这样,阈值应该在哪里?我当然会选择使用多个CMakeListst.txt文件 根据经验,我认为您应该为每个目标选择一个CMakeLists.txt(以及相应的子目录)。因此,每个库或可执行文件都有自己的CMakeLists.txt 然后,您可以使用add_子目录调用创建一个包含所有其他文件的“master

在使用cmake时,最好在项目根目录中使用一个大型的CMakeLists.txt,还是像在某些地方看到的那样,在每个子目录中都有一个

我认为对于大型项目,在每个目录中都有一个目录会更好。

如果是这样,阈值应该在哪里?

我当然会选择使用多个CMakeListst.txt文件

根据经验,我认为您应该为每个目标选择一个CMakeLists.txt(以及相应的子目录)。因此,每个库或可执行文件都有自己的CMakeLists.txt

然后,您可以使用
add_子目录
调用创建一个包含所有其他文件的“master”CMakeLists.txt。如果您注意正确排列这些语句,就可以轻松地引用其他CMakeLists.txt文件中先前定义的目标