** MAC OS: LightGBM安装 **
在mac下使用pip3 install LightGBM 安装lightgbm,在命令窗口扣可以正常导入,但是pycharm中导入包时会报错。在查找了一些方法后对安装以及错误的原因和解决方法记录如下。
- 错误描述如下:
OSError: dlopen(/Users/gzy/venv/lib/python3.7/site-packages/lightgbm/lib_lightgbm.so, 6): Library not loaded: /usr/local/opt/libomp/lib/libomp.dylib Referenced from: /Users/gzy/venv/lib/python3.7/site-packages/lightgbm/lib_lightgbm.so Reason: image not found
官方安装链接
https://lightgbm.readthedocs.io/en/latest/Installation-Guide.html#macos
- 原因是mac 安装lightgbm依赖OpenMP。官方给出的安装步骤如下:
$ brew install cmake;
$ brew install gcc
$ brew install brew install libomp
$ git clone --recursive https://github.com/microsoft/LightGBM ; cd LightGBM
$ mkdir build ; cd build
$ cmake
-DOpenMP_C_FLAGS="-Xpreprocessor -fopenmp -IKaTeX parse error: Undefined control sequence: \ at position 33: …bomp)/include" \̲ ̲   -D…(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
- 安装说明,没什么大的问题,但是可能安装的过程中会出现下面的问题:
CMake Error at /usr/local/Cellar/cmake/3.15.2/share/cmake/Modules/CMakeDetermineCCompiler.cmake:49 (message):
Could not find compiler set in environment variable CC:
gcc-8.
Call Stack (most recent call first):
CMakeLists.txt:7 (PROJECT)
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
- 解决办法
cmake -DCMAKE_CXX_COMPILER=$(which g++) -DCMAKE_C_COMPILER=$(which gcc) ./
- 执行完毕完毕后,接着下面的步骤继续执行,问题都能解决,至于什么原因,还不清楚,有知道的或者有建议改进的欢迎留言。