首先关于普通环境下的安装网上有很多,前面的步骤是一样的:
1、先通过brew安装cmake和gcc
brew install cmake
brew install gcc --without-multilib
这样之后brew会查找最新的gcc版本进行安装,安装过程中要仔细观察安装的gcc版本,接下来会用到,很重要,如果没注意安装过程并且不小心关掉了终端的话可以到这个路径进行查看:
/usr/local/opt/gcc/lib/gcc/8
当然最后的数字代表了当前安装的gcc大版本,我的是gcc8
2、下面用cmake进行编译:
git clone --recursive https://github.com/Microsoft/LightGBM
cd LightGBM
export CXX=g++-9 CC=gcc-9
mkdir build
cd build
cmake ..
make -j4
此时非常需要注意的是:
export CXX=g++-9 CC=gcc-9
当中的数字9必须对应刚才提到的gcc大版本号
3、下面就是在你自己的anaconda环境中安装我们刚才编译好的lightgbm了:
首先要进入你的虚拟环境;
在虚拟环境中cd到你下载的LightGBM中的以下路径:
LightGBM/python-package
运行
sudo python setup.py install --precompile
输入密码...
就完成了。
ps:如果用其他的教程直接在虚拟环境中pip install lightgbm之后,
运行import lightgbm会报以下错误:
Error: dlopen(/Users//anaconda3/envs//lib/python2.7/site-packages/lightgbm/lib_lightgbm.so, 6): Library not loaded: /usr/local/opt/gcc/lib/gcc/7/libgomp.1.dylib
Referenced from: /Users//anaconda3/envs/mouse/lib/python2.7/site-packages/lightgbm/lib_lightgbm.so
Reason: image not found
折腾半天,终于找到了以上解决办法,原因是上面的cmake编译之类的操作都在macos本地上面进行的,在anaconda虚拟环境中直接pip安装相当于白费功夫。。就是这样。