我在构建过程中遇到了这个错误
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
,并且还尝试添加
-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。我该如何解决这个问题呢?
发布于 2021-08-25 04:32:29
Cmake finds是由apt
安装在/usr
文件夹中的python。有两种方法可以告诉Cmake python的特殊位置:
在命令行上定义PYTHON_INCLUDE_DIR
和PYTHON_LIBRARY
变量不起作用,因为在调用find_package(python3)
时会覆盖这些变量。
此外,在将python-dev安装到系统中时,可以显式指定需要版本3。
sudo apt-get install python3-dev
https://stackoverflow.com/questions/68913248
复制相似问题