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
Module 跨项目共享CMake模块的正确方法?_Module_Cmake - Fatal编程技术网

Module 跨项目共享CMake模块的正确方法?

Module 跨项目共享CMake模块的正确方法?,module,cmake,Module,Cmake,我已经编写了一个CMake模块,其中包含了一些有用的宏,我想在许多其他CMake项目中使用这些宏。但是,我不确定模块放在哪里 我希望能够在使用宏的每个项目中做到这一点: include(MyModule) 然而,我不确定是否有一种简单且跨平台的方法来实现这一点。事实上,我甚至不能让它在Unix上工作。我将模块(MyModule.cmake)放在以下位置: /usr/lib/cmake/ /usr/lib/cmake/Modules /usr/local/lib/cmake /usr/loca

我已经编写了一个CMake模块,其中包含了一些有用的宏,我想在许多其他CMake项目中使用这些宏。但是,我不确定模块放在哪里

我希望能够在使用宏的每个项目中做到这一点:

include(MyModule)
然而,我不确定是否有一种简单且跨平台的方法来实现这一点。事实上,我甚至不能让它在Unix上工作。我将模块(
MyModule.cmake
)放在以下位置:

  • /usr/lib/cmake/
  • /usr/lib/cmake/Modules
  • /usr/local/lib/cmake
  • /usr/local/lib/cmake/Modules
…并且具有
include()
的项目无法加载模块

此模块的正确位置是什么?有更好的方法吗

我还应该指出,宏与“查找”第三方库无关,因此与
find\u package()
无关