Buildroot 失败找不到 python 模块:"ImportError : Cython not found !"



我试图运行一个完整的make在Buildroot。我添加了一些Python包作为hdbscan。不幸的是,似乎Buildroot需要Cython来构建hbdscan并且找不到它,即使它似乎已经安装…

下面是我运行make后得到的错误:

<path to buildroot>/output/build/python-hdbscan-0.8.27/setup.py:8: UserWarning : No module named 'Cython'
warnings.warn(e.args[0])
<path to buildroot>/output/build/python-hdbscan-0.8.27/setup.py:92: UserWarning : Due to incompatibilities with Python 3.7 hdbscan nowrequires Cython to be installed in order to built it
warnings.warn("Due to incompatibilities with Python 3.7 hdbscan now")
...
raise ImportError('Cython not fuond ! Please install cython and try again')
ImportError: Cython not fuond ! Please install cython and try again

它试图运行的setup.py文件确实要求import cython,但它应该已经安装。我尝试了我能在论坛上看到的每一个命令,但什么也做不到…由于我在虚拟机上安装了几个版本的Python,我认为这可能是问题的原因,但我不确定了…我运行了如下几个命令:

  • sudo pip install cython
  • sudo apt --reinstall install cython
  • sudo python3.7 -m pip install cython
  • sudo apt-get install cython一些命令来升级cython, pip…一些命令可以卸载cython然后重新安装…

我不知道该怎么做了…有谁知道我能做什么吗?

您需要将cython作为交叉编译环境的一部分,而不是简单地安装在构建机器上。在构建机器上运行的pipapt都没有帮助。

在Buildroot中,很容易做到这一点:在python-hdbscan.mk文件中添加对Cython的依赖:

PYTHON_HDBSCAN_DEPENDENCIES += python-cython

为了完整起见,您还需要Config.in中相应的依赖项:

config BR2_PACKAGE_PYTHON_HDBSCAN
...
select BR2_PACKAGE_PYTHON_CYTHON
...

最新更新