- 用pip安装的lab一直会自动安装numpy1.24.4,而我需要numpy<=1.22.0;如果安装lab后修改numpy版本,又会导致安装的lab和numpy不匹配,无法使用。并且网上没什么关于lab和numpy的匹配版本的博文。
# 报错如下 ... ... "/opt/data/private/mysoftware/mmtracking/mmtrack/models/trackers/byte_tracker.py", line 2, in <module> import lap File "/opt/data/private/mysoftware/anaconda3/envs/mmcv/lib/python3.8/site-packages/lap/__init__.py", line 16, in <module> from ._lapjv import ( File "_lapjv_cpp/_lapjv.pyx", line 1, in init _lapjv ImportError: numpy.core.multiarray failed to import (auto-generated because you didn't call 'numpy.import_array()' after cimporting numpy; use '<void>numpy._import_array' to disable if you are certain you don't need it).
- 后来用conda安装解决了。
# 使用conda安装lap conda install -c conda-forge lap
- 如上报错
numpy.core.multiarray failed to import
通常是因为:lap库的Cython扩展在编译时没有正确链接NumPy的C API - conda提供的预编译版本已经正确处理了这个链接;还会严格检查所有依赖的兼容性,包括C/C++库、Python包、系统库等
- 而pip从源码编译时可能缺少正确的编译标志
- 如上报错
- 之后如果不知道安装哪个明确版本、容易和其他已确定版本的起冲突时,可以尝试用conda安装(但好像conda/pip安装尽量要避免混合使用,特殊情况实在下不了可以试试)
conda安装lab
于 2025-08-30 01:11:39 首次发布