我有这个问题。
CMake Error at CMakeLists.txt:14 (find_package):由于没有在CMAKE_MODULE_PATH中提供"FindTBB.cmake“,该项目要求CMake查找由"TBB”提供的包配置文件,但CMake没有找到。
我找不到由"TBB“提供的具有下列任何名称的包配置文件:
TBBConfig.cmake
tbb-config.cmake
将安装前缀"TBB“添加到CMAKE_PREFIX_PATH或将"TBB_DIR”设置到包含上述文件之一的目录中。如果"TBB“提供了一个单独的开发包或SDK,请确保它已经安装。
我怎么才能解决这个问题?
这是我的CMakeLists.txt
cmake_minimum_required(VERSION 3.9)
project(deneme)
set(CMAKE_CXX_STANDARD 11)
include("C:/yunus/Git/inteltbb/tbb/cmake/TBBBuild.cmake")
tbb_build(TBB_ROOT "C:/yunus/Git/inteltbb/tbb" CONFIG_DIR TBB_DIR)
find_package(TBB REQUIRED tbb)
add_executable(deneme main.cpp ToDo.cpp ToDo.h)
发布于 2018-02-25 21:42:59
默认情况下,TBB
不随FindTBB.cmake
模块一起提供,因此错误消息中的指导原则有点误导。
如果您的项目提供了相应的FindTBB.cmake
模块,则需要向其添加路径并将TBB
安装路径添加到CMake
调用中,即
cmake . -G "<your generator here>" -DTBB_DIR=<path to TBB installation> -DCMAKE_PREFIX_PATH=<path to FindTBB.cmake>
否则,您需要下载一个合适的FindTBB.cmake
模块,例如https://github.com/schuhschuh/cmake-basis-modules/blob/develop/FindTBB.cmake
这里使用的是TBB_ROOT而不是TBB_DIR。
编辑:
首先尝试TBB的二进制包集成。注释include(...)
和tbb_build(...)
命令并添加
target_link_libraries(deneme ${TBB_IMPORTED_TARGETS})
在CMakeLists.txt
调用之后发送到您的add_executable
。然后打电话
cmake . -G "<your generator here>" -DCMAKE_PREFIX_PATH=<path to your TBB installation>
https://stackoverflow.com/questions/48978579
复制相似问题