2017-06-12 282 views
1

我的操作系统是macOS Sierra,10.12.5,我使用的是Anaconda和python 2.7。安装后,当我尝试: 进口lightgbm作为LGB 我得到了以下信息:安装后无法导入lightgbm

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 

在此先感谢您的帮助。

回答

1

我以前遇到过这个问题。实际上,LightGBM依赖于OpenMP进行编译,而Apple Clang不支持。您应该安装GCC/G ++通过使用以下命令:

brew install cmake 
brew install gcc --without-multilib 

看到更多细节here 希望这可以帮助你。

+0

谢谢您的回复。我按照这里的说明:https://www.ibm.com/developerworks/community/blogs/jfp/entry/Installing_LightGBM_for_Anaconda_on_MacOSX?lang = en 安装lightgbm,并且我再次阅读指令,好像有一些变化相比上次我做到了。所以,也许我会卸载我的gcc并重新执行。 –