首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CMake错误:找不到Python (缺少: Python_NumPy_INCLUDE_DIRS NumPy) (找到版本"2.7.17")

CMake错误:找不到Python (缺少: Python_NumPy_INCLUDE_DIRS NumPy) (找到版本"2.7.17")
EN

Stack Overflow用户
提问于 2021-08-24 19:41:01
回答 1查看 383关注 0票数 1

我在构建过程中遇到了这个错误

代码语言:javascript
运行
复制
CMake Error at /opt/cmake-3.21.1-linux-x86_64/share/cmake-3.21/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Python (missing: Python_NumPy_INCLUDE_DIRS NumPy) (found
  version "2.7.17")
Call Stack (most recent call first):
  /opt/cmake-3.21.1-linux-x86_64/share/cmake-3.21/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /opt/cmake-3.21.1-linux-x86_64/share/cmake-3.21/Modules/FindPython.cmake:556 (find_package_handle_standard_args)
  faiss/python/CMakeLists.txt:116 (find_package)

我已经安装了sudo apt-get install python-dev,并且还尝试添加

代码语言:javascript
运行
复制
-DPYTHON_INCLUDE_DIR=$(python -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())")  \
-DPYTHON_LIBRARY=$(python -c "import distutils.sysconfig as sysconfig; print(sysconfig.get_config_var('LIBDIR'))")

仍然会得到相同的错误。我的python是用/home/dfw/anaconda3/bin/python编写的,版本是3.7.11。我的cmake版本是3.21.1。我该如何解决这个问题呢?

EN

回答 1

Stack Overflow用户

发布于 2021-08-25 04:32:29

Cmake finds是由apt安装在/usr文件夹中的python。有两种方法可以告诉Cmake python的特殊位置:

在命令行上定义PYTHON_INCLUDE_DIRPYTHON_LIBRARY变量不起作用,因为在调用find_package(python3)时会覆盖这些变量。

此外,在将python-dev安装到系统中时,可以显式指定需要版本3。

代码语言:javascript
运行
复制
sudo apt-get install python3-dev
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68913248

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档