我有一个cmake构建,我正在搜索一堆依赖项,即我有很多实例:
FIND_PACKAGE(SomePackage)
if(SOMEPACKAGE_FOUND)
include_directories(${SOMEPACKAGE_INCLUDE_DIR})
link_libraries(${SOMEPACKAGE_LIBRARIES})
endif(SOMEPACKAGE_FOUND)
Run Code Online (Sandbox Code Playgroud)
现在,我想添加一个自定义命令来构建一个预编译的头文件,但要做到这一点,我需要知道我的include_directories调用添加的所有路径.如何获取这些目录的列表(最好使用正确的-I/path/to/directory格式),以便我可以将它们添加到我的自定义命令中?
在CMake 3.8版中,引入了对CUDA语言的原生支持。当项目将CUDA作为其语言之一时,CMake将继续查找CUDA(例如,它找到nvcc二进制文件)。
只要您只编译CUDA代码-就足够了。但是,如果您想在该项目中编译C ++目标怎么办?CUDA包含不是-I自动生成的,并且CMakeCache.txt似乎在任何地方都不包含CUDA包含路径。
find_package(CUDA 9.0 REQUIRED)即使CMake本身已经找到CUDA,我是否真的必须运行某些程序?或者-我可以通过其他方式获取include目录吗?