我的操作系统是macOS Sierra,10.12.5,我使用的是Anaconda和python 2.7。安装后,当我尝试: 将lightgbm导入为lgb 我收到以下消息:
OSError Traceback (most recent call last)
<ipython-input-28-2ae3725bef24> in <module>()
----> 1 import lightgbm as lgb
/Users/tenggao/anaconda/lib/python2.7/site-packages/lightgbm/__init__.py in <module>()
7 from __future__ import absolute_import
8
----> 9 from .basic import Booster, Dataset
10 from .callback import (early_stopping, print_evaluation, record_evaluation,
11 reset_parameter)
/Users/tenggao/anaconda/lib/python2.7/site-packages/lightgbm/basic.py in <module>()
29
30
---> 31 _LIB = _load_lib()
32
33
/Users/tenggao/anaconda/lib/python2.7/site-packages/lightgbm/basic.py in _load_lib()
24 if len(lib_path) == 0:
25 raise Exception("cannot find LightGBM library")
---> 26 lib = ctypes.cdll.LoadLibrary(lib_path[0])
27 lib.LGBM_GetLastError.restype = ctypes.c_char_p
28 return lib
/Users/tenggao/anaconda/lib/python2.7/ctypes/__init__.pyc in LoadLibrary(self, name)
438
439 def LoadLibrary(self, name):
--> 440 return self._dlltype(name)
441
442 cdll = LibraryLoader(CDLL)
/Users/tenggao/anaconda/lib/python2.7/ctypes/__init__.pyc in __init__(self, name, mode, handle, use_errno, use_last_error)
360
361 if handle is None:
--> 362 self._handle = _dlopen(self._name, mode)
363 else:
364 self._handle = handle
OSError: dlopen(/Users/tenggao/anaconda/lib/python2.7/site-packages/lightgbm/lib_lightgbm.so, 6): Library not loaded: /usr/local/opt/libiomp/lib/libiomp5.dylib
Referenced from: /Users/tenggao/anaconda/lib/python2.7/site-packages/lightgbm/lib_lightgbm.so
Reason: image not found
提前感谢您的帮助。
答案 0 :(得分:4)
我之前遇到过这个问题。实际上,LightGBM依赖于OpenMP进行编译,Apple Clang不支持。您应该使用以下命令安装gcc / g ++:
brew install cmake
brew install gcc --without-multilib
查看更多详情here 希望这可以帮到你。
答案 1 :(得分:0)
我同时遵循了(https://github.com/microsoft/LightGBM/issues/1369)和网站(https://lightgbm.readthedocs.io/en/latest/Installation-Guide.html#macos)上的安装指南
由于我具有gcc版本9.1.0,因此我使用了:
git clone --recursive https://github.com/Microsoft/LightGBM;光盘LightGBM 出口CXX = g ++-9 CC = gcc-9 mkdir构建;光盘制作 cmake .. 使-j4
在执行安装过程中,然后运行:
pip install --no-binary:all:lightgbm
将lightgbm导入我的jupyter笔记本后,它警告我安装libomp,所以我也这样做了:
酿造libomp
然后警告消失了。
答案 2 :(得分:0)
我在Mac上遇到了相同的问题,只需安装OpenMP库即可解决此问题。
brew install libomp