对于错误或安装问题,请提供以下信息。
您提供的信息越多,我们就越容易提供
帮助和建议。
编译成功,
anaconda 环境,
并使用“conda list”可以显示“xgboost”。
但是当 import xgboost 显示错误: OSError: /home/yin/anaconda3/bin/../lib/libgomp.so.1: version `GOMP_4.0' not found (required by /home/yin/anaconda3/lib/ python3.5/site-packages/xgboost-0.6-py3.5.egg/xgboost/libxgboost.so)
操作系统:Ubunutu kylin 16.10
编译器:
使用的包(python/R/jvm/C++):python
xgboost
使用的版本:最新
如果从源安装,请提供
git rev-parse HEAD
)OSError:/home/yin/anaconda3/bin/../lib/libgomp.so.1:找不到版本“GOMP_4.0”(/home/yin/anaconda3/lib/python3.5/site-packages/ 需要xgboost-0.6-py3.5.egg/xgboost/libxgboost.so)
如果您使用的是 python 包,请提供:
蟒蛇
xgboost
的命令如果您使用的是 R 包,请提供
sessionInfo()
xgboost
的命令1.
2.
3.
1.重建xgboost,不起作用
2.
3.
你如何重建 xgboost ?
你做了make clean_all
并跟着make -j
吗?
您好,感谢您的关心,问题已经解决了。关键是我安装了anaconda,anaconda中的libgomp.so.1和libstdc++.so.6文件似乎过时了,缺少GOMP_4.0和其他一些文件,但是在Ubuntu 16.04对应的文件已经够新了,解决方法是制作一些链接文件来更新anaconda中的对应文件
啊,厉害。 关闭问题,以免它出现未解决
2016 年 11 月 21 日上午 11:57,“yinshurman” [email protected]写道:
您好,感谢您的关心,问题已经解决,重点是
我安装了 anaconda 和 libgomp.so.1 和 libstdc++.so.6 文件
anaconda 似乎过时了,缺少 GOMP_4.0 和其他一些文件,但在
Ubuntu 16.04 对应的文件够新,解决办法是make
一些链接文件来更新anaconda中的相应文件—
您收到此消息是因为您发表了评论。
直接回复此邮件,在 GitHub 上查看
https://github.com/dmlc/xgboost/issues/1786#issuecomment -261854524,或者静音
线程
https://github.com/notifications/unsubscribe-auth/ACGUp9c5d-t8t-87qfMLYoJTk5cfW4_rks5rATnYgaJpZM4K2Gx1
.
@yinshurman您介意发布解决步骤吗!
提前谢谢
step 1 : 使用以下命令检查 anconda 中的 libgomp.so.1 文件是否包含所需的 GOMP_4.0 版本(在所有步骤中将路径替换为您自己的路径):
strings /home/yin/anaconda3/bin/../lib/libgomp.so.1 |grep GOMP
(如果没有GOMP_4.0版本,请转至第2步,否则请发表评论)
第 2 步:检查操作系统中的 libgomp.so.1:
sudo find / -name libgomp.so.1*
step3:查看anaconda中的链接:
ls -al /home/yin/anaconda3/bin/../lib/libgomp.so.1
如果链接未链接到 step 2 的列表中的最新版本,则创建一个新链接以通过以下方式更新它:
sudo rm -rf /home/yin/anaconda3/bin/../lib/libgomp.so.1
sudo ln -s <path of the newest version libgomp file in your OS > <path in anaconda>
(例如sudo ln -s /usr/.../libgomp.so.XXX /home/yin/anaconda3/bin/..libgomp.so.1
)
ps:没有我的电脑,我不记得具体的路径,但是这个方法解决了我的问题,事实上,在我的情况下,不仅GOMP_4.0而且其他一些文件都没有找到(例如,这个https ://github.com/dmlc/xgboost/issues/1700 ),这个解决方案也很有效。
有效。 非常感谢@yinshurman
@yinshurman ....你能告诉我一步一步我没有找到以下错误的解决方案:
导入 xgboost
SError:/home/akash/anaconda2/bin/../lib/libgomp.so.1:未找到版本“GOMP_4.0”(/home/akash/anaconda2/lib/python2.7/site-packages/ 需要xgboost/./lib/libxgboost.so
是的,它有效。 这些步骤非常适用于 libeemd 和 pyeemd 包。 谢谢
有什么方法可以更新 anaconda 中的 libgomp 库
在我将符号文件制作到系统文件后,它会报告有关 libstdc++.so.6 的错误。
或许你可以试试conda install libgcc
也可以解决这样的问题@jiqiujia
@yinshurman 非常感谢。 有用!
@yinshurman 非常感谢。 有用
我遇到了类似的问题,通过将 anaconda gcc 从 4.8.5 更新到 5.4.0 来修复它:
conda install -c salford_systems gcc-5
@yinshurman我遇到了 libgomp.so.1 和 libstdc++.so.6 的问题,它对两者都有效。 谢谢你。
未找到“GOMP_4.0”
这是一个错误,因为 xgboost 构建时使用的版本与运行时 xgboost 使用的 conda 环境中的版本不匹配。
解决问题而不破坏任何东西的最简单方法是使用 conda 的库显式构建 xgboost,为此需要执行以下操作:
export LD_LIBRARY_PATH=~/work/anaconda3/lib #or whatever your anaconda install path is
which python
export PATH=~/work/anaconda3/bin:$PATH
cd ~/xgboost
make clean_all
make -j4
cd python-package
python setup.py install
您现在可以关闭终端,并启动一个新终端,LD_LIBRARY_PAT 不需要持久化,作为 conda 的 env。 得到所需的库。
最有用的评论
或许你可以试试
conda install libgcc
也可以解决这样的问题@jiqiujia