python - 在具有 OpenMP 依赖项的 Mac 上安装 Lightgbm

标签 python python-3.x pip openmpi lightgbm

我是 python 新手,想安装 lightgbm在我的 macbook 上。我做了一个 pip install lightgbm,它说安装成功。但是,当我尝试将其导入我的笔记本时,出现以下错误消息:

../anaconda/envs/python3/lib/python3.6/ctypes/__init__.py in __init__(self, name, mode, handle, use_errno, use_last_error)
342 
343         if handle is None:
--> 344             self._handle = _dlopen(self._name, mode)
345         else:
346             self._handle = handle

OSError: dlopen(../anaconda/envs/python3/lib/python3.6/site-packages/lightgbm/lib_lightgbm.so, 6): Library not loaded: /usr/local/opt/gcc/lib/gcc/7/libgomp.1.dylib
Referenced from: ../anaconda/envs/python3/lib/python3.6/site-packages/lightgbm/lib_lightgbm.so
Reason: image not found

lightgbm 网站上的文档使用 brew install... 给出了不同的安装指南。我的问题是我是否必须进行 brew install?如果是这样,为什么 pip 安装显示安装成功?

最佳答案

pip 只会安装 lightgbm python 文件。 documentation说明 lightgbm 依赖于 OpenMP。所以你也需要安装它。你遇到的问题是因为python找不到OpenMP自带的所需的“动态链接库”。

brew install open-mpi 应该可以解决问题。

旁注:作为快速测试,我以与您相同的方式安装了 lightgbm,但遇到了同样的问题。但是我在 /usr/local/opt/gcc/lib/gcc/6 中找到了 libgopm.1.dylib。将其符号链接(symbolic link)到所需路径并未证明是成功的。

关于python - 在具有 OpenMP 依赖项的 Mac 上安装 Lightgbm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47644723/

相关文章:

python - 如何在 Cython 中定义 C++ 模板函数类型?

python - 将数据透视表转换为数据框

python - 每次我开始构建新的 Flask 应用程序时创建一个新的 `virtualenv` 是一个好习惯吗?

python - 在 Python 中 fork 多个 shell 命令/进程的最佳方法?

python - pip uninstall broken w/--environment 标志?

python - 安装Python winshell后Winshell报错win32con not found

python - 如何让箭头朝鼠标方向射出?

python - python 中是否可以执行 "from module.foo import * as bar"?

mysql - 如何使用 django mysql 在原始 sql 查询中传递动态变量

python - Conda:目标环境中缺少以下包