背景:虚拟机无网络连接,其Linux操作系统下已经配置好了anaconda,使用的是python3。 目标:在无网络环境下安装lightgbm文件。
在网址 https://pypi.org/project/lightgbm/2.0.3/#files 中选择相应格式的文件,传至虚拟机中。 在虚拟机中执行安装程序
安装好lightgbm包后,使用lightgbm训练,生成model.txt,但在调用model.txt文件进行预测时,出现错误runtime_error。
Tree model should contain num_cat field terminate called after throwing an instance of ‘std::runtime_error’ what(): Tree model should contain num_cat field 已放弃(吐核)
这是由于lightgbm的版本和配置环境不匹配。更换lightgbm为2.1.1版本。 重新从网址 https://pypi.org/project/lightgbm/2.1.1/#files中下载.whl文件并传至虚拟机。
pip3 uninstall lightgbm-2.0.3-py2.py3-none-manylinux1_x86_64.whl pip3 install lightgbm-2.1.1-py2.py3-none-manylinux1_x86_64.whllinux中配置好lightgbm后,还需在Visual Studio中添加库文件。 从TFS中找到LightGBMApi.h文件,下载并添加到头文件中。注意两个系统都要添加,否则执行不成功。 右击Linux下的cpp文件,点击VisualGDB Project Properties,在库中添加库名称lightgbm。 否则会生成错误 undefined symbol: _ZN12CLightGBMApi6CreateEPKc
注:当liblightgbm.so文件损坏时,也会生成_ZN12CLightGBMApi6CreateEPKc错误。可通过
ldd -r 执行文件名称.so来查看lib文件是否齐全,若缺失,从系统库中复制进来即可。