本文记录一下自己的mac安装lightgbm的过程,折腾一个多小时,终于弄好了。
step 1 brew安装cmake, gcc插件
我之前安装xgboost的时候已经安装过着俩插件,没安装的同学按下面步骤操作即可
brew install cmake
brew install gcc
step 2 配置环境
在终端进入 vi ~/.bash_profile,增加如下代理
# gcc
export PATH="/usr/local/Cellar/gcc/9.2.0_3/bin/gcc-9:${PATH}"
export PATH="/usr/local/Cellar/gcc/9.2.0_3/bin/g++-9:${PATH}"
export CXX="/usr/local/Cellar/gcc/9.2.0_3/bin/g++-9"
export CC="/usr/local/Cellar/gcc/9.2.0_3/bin/gcc-9"
这里gcc的版本信息根据实际安装的情况来,可到上面对应路径下去看
step 3 git 拉取下载GitHub上的资源
终端切回到根目录 cd ~,然后执行下面命令
git clone --recursive https://github.com/Microsoft/LightGBM
正常的话就是拉取到本地LightGBM目录了
step 4 本地make
依次执行以下命令
cd LightGBM
export CXX=g++-9 CC=gcc-9
mkdir build
cd build
cmake ..
make -j4
这里要注意两点,第一,第二行命令里g+±9版本要和step 2配置的一致;第二,我当时在 cmake的时候报错,提示 could not find compiler set in environment variable cc
,当时是因为是在配置step 2的时候gcc版本写的是8,但实际是9.0,因此报错,解决方法就是保持两者一致,然后删掉build目录,重新mkdir,再次运行即可。
step 5 pip 安装
从build目录返回上一层,进入python-package目录
然后执行
pip install lightgbm
这时可能又会报could not create '/usr/lib/python2.7/site-packages/lightgbm' operation not permitted
更改一下pip命令即可
sudo pip install lightgbm --user
到这里基本上就ok了,离胜利还有一步之遥
step 5 copy build目录
最后需要将整个build目录copy到anaconda3/lib/python3.7/site-packages/
这个目录下,这样anaconda里才能真正使用这个模块
import lightgbm 验证是否成功
我在用pycharm的时候,配置的解释器是anaconda自带的python3.7,然后之前自己安装了一个3.6,从终端进入的时候是用的3.6,但是在pycharm里显示还是不成功,报错是anaconda下有几个路径找不到 lib_lightgbm.so
文件,解决办法简单粗暴,从已有的路径下去把这个文件复制到缺失的几个路径就好了。
参考文献:
- http://liujunworld.com/2018/10/16/Mac%E4%B8%8B%E5%AE%89%E8%A3%85lightGBM/
- https://segmentfault.com/a/1190000015281169
- https://github.com/Microsoft/LightGBM/issues/1369