gpt4 book ai didi

c++ - 使用 Visual Studio 2015 x64 和 CMake 构建 TBB

转载 作者:行者123 更新时间:2023-11-27 23:41:52 25 4
gpt4 key购买 nike

我想构建 TBB 以在另一个 CMake 项目中使用它。我试图从 Github source 构建 TBB使用 makefile (使用 VisualStudio 2015 升级)。由于神秘错误而失败:

LINK: fatal error LNK1181:无法打开输入文件“opencv_core300.lib”

此错误可能源自何处?

我的第二次尝试是使用另一个 repository 构建 TBB允许使用 CMake 构建。此构建生成 tbb.lib、tbb.dll 等文件。现在我不知道如何将它合并到我的其他 cmake 文件中。没有 TBBConfig.cmake 或类似的。我的项目的 CMakeLists.txt 如下所示:

cmake_minimum_required(VERSION 3.10)
project(IntrafraktionelleRegistrierung)

find_package(ITK REQUIRED
COMPONENTS
ITKRegistrationCommon
ITKRegistrationMethodsv4
)

include(${ITK_USE_FILE})
set(SRC
${CMAKE_PROJECT_NAME}.cxx
)

if (DEFINED ENV{TBBROOT})
message(STATUS "TBBROOT: $ENV{TBBROOT}")
else()
message(STATUS "TBBROOT not defined!")
endif()

find_package(TBB REQUIRED)
add_executable(${CMAKE_PROJECT_NAME} ${SRC})
target_link_libraries( ${CMAKE_PROJECT_NAME}
${ITK_LIBRARIES}
tbb
)'

TBBROOT 是 tbb 的构建目录。我可用的 FindTBB.cmake 是从 here 借来的并复制到cmake的modules目录下。

最新版本binaries of TBB有一个 CMake 文件夹,里面有 TBBConfig.cmake。我用它来将 TBB 链接到我的项目,但不知何故我以错误告终:“找不到 tbb-NOTFOUND.obj”。 (这种方式还在研究中。

是否有人使用此存储库配置和构建 cmake 项目?

最佳答案

关于CMake相关问题

基本上你有两个选择:

  • 将预构建的 TBB 二进制文件集成到您的项目中

    您可以使用 binaries of TBB (就像你所做的那样)根据以下 example .在调用 find_package(TBB REQUIRED) 之后您将获得格式为 TBB::<component> 的 TBB 目标(例如 TBB::tbbTBB::tbbmalloc 等)。还有 TBB_IMPORTED_TARGETS变量将包含所有导入的 TBB 目标。

    因此,您需要稍微修改一下 target_link_libraries :

    target_link_libraries( ${CMAKE_PROJECT_NAME}
    ${ITK_LIBRARIES}
    ${TBB_IMPORTED_TARGETS}
    )

    target_link_libraries( ${CMAKE_PROJECT_NAME}
    ${ITK_LIBRARIES}
    TBB::tbb
    )

    您还可以更新您的 find_package如果你只需要 TBB::tbb项目中的组件:find_package(TBB REQUIRED tbb)

  • 将 TBB 源代码集成到您的项目中

    您可以使用 tbb_build (它是一个在 TBB Makefile 上使用 GNU Make 的 CMake 包装器),但要在 Windows 上的 Visual Studio 下运行它,您需要在您的环境中安装 GNU Make。

    如果您想集成此 TBB (with CMake support)你可以使用 add_subdirectory(<YOUR-TBB-ROOT>) (将 <YOUR-TBB-ROOT> 替换为 TBB 的实际位置)而不是 find_package(TBB REQUIRED) .

关于c++ - 使用 Visual Studio 2015 x64 和 CMake 构建 TBB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54094731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com