返回

c++-使用 CMake 包含/链接使用 conda (mamba) 安装的库

发布时间:2022-07-29 21:34:38 308
# golang

我正在一台无法安装到 /usr/local 的机器上工作,因此正在探索使用 conda 环境。我的项目有 3 个依赖项: cspice、tbb和zstd. 我已经使用 conda 安装了其中的每一个,并验证了二进制文件位于:

  • ~/mamba_envs/my_env/lib/cspice.a
  • ~/mamba_envs/my_env/lib/libtbb.so
  • ~/mamba_envs/my_env/bin/libzstd.so

当标题处于以下位置时:

  • ~/mamba_envs/my_env/include/cspice/SpiceUsr.h
  • ~/mamba_envs/my_env/include/oneapi/tbb.h
  • ~/mamba_envs/my_env/include/zstd.h

但是,当我去编译时,会出现以下错误:

fatal error: oneapi/tbb.h: No such file or directory

在我看来,它仍然在 /usr/local/include 或其他地方寻找,而不是在 conda 环境中。我的项目具有以下结构:

project/
   | - external/
   | - include/
   | - lib/
   |   | - CMakeLists.txt
   |   | - *.cpp
   | - src/
   |   | - CMakeLists.txt
   |   | - *.cpp
   | - CMakeLists.txt

这个lib/目录是需要依赖项的内容。所以我试图添加到lib/CMakeLists.txt:

include_directories(~/mamba_envs/my_env/include)

然而,这没有任何作用。

我需要做什么才能包含正确的标题和链接所需的内容?看起来康达(mamba)正在安装我需要的一切,但我不确定如何使用CMake在正确的位置进行查找。

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像