macbook安装LightGBM

一开始直接用pip install lightgbm

报错:

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

看了一些网络回答,原因:主要是编译器的版本不一致(mac默认是gcc-8,pip安装的包则是用gcc-7编译的)

只要通过 brew install libomp 安装一个 libomp 就可以正常使用 lightgbm 了。看这里

还有一个解答,看这里

按照上面和下面的文档下载了一通,运行时还是不行,原来For Mac OS X users, gcc with OpenMP support must be installed first. 我之前在安装gcc或openmp之前先用pip install lightgbm了,所以一直还是不行,看这里

 

然后我看了一下我的gcc,原来都没有安装,这个需要自己安装的。安装这个之前,还要先安装一下Homebrew。

什么是homebrew?简单说就是一款mac os软件包管理工具。

什么是CMake?是一个跨平台的安装、编译工具。

什么是Apple Clang?是一个c语言、c++的轻量级编译器。

什么是Xcode?是运行在mac os上的集成开发环境(IDE)。里面包含了Apple Clang。

什么是gcc?GNU Compiler Collection,全称GNU编译器套件,是多种语言的编译器。

如何安装Xcode?

 

根据lightgbm官网安装教程,有三种安装方法:

1.用Homebrew安装

brew install lightgbm

2.git模式安装

brew install cmake
brew install libomp
git clone --recursive https://github.com/microsoft/LightGBM ; cd LightGBM
mkdir build ; cd build

# For Mojave or newer (>=10.14)
cmake \
  -DOpenMP_C_FLAGS="-Xpreprocessor -fopenmp -I$(brew --prefix libomp)/include" \
  -DOpenMP_C_LIB_NAMES="omp" \
  -DOpenMP_CXX_FLAGS="-Xpreprocessor -fopenmp -I$(brew --prefix libomp)/include" \
  -DOpenMP_CXX_LIB_NAMES="omp" \
  -DOpenMP_omp_LIBRARY=$(brew --prefix libomp)/lib/libomp.dylib \
  ..

# For High Sierra or earlier (<= 10.13)
cmake ..

make -j4

3.gcc模式安装

brew install cmake
brew install gcc
git clone --recursive https://github.com/microsoft/LightGBM ; cd LightGBM
export CXX=g++-7 CC=gcc-7  # replace "7" with version of gcc installed on your machine
mkdir build ; cd build
cmake ..
make -j4

posted on 2019-11-29 15:09  静静的白桦林_andy  阅读(2948)  评论(0编辑  收藏  举报

导航