Xgboost: importar xgboost OSError: versión `GOMP_4.0' no encontrada

Creado en 18 nov. 2016  ·  15Comentarios  ·  Fuente: dmlc/xgboost

Para errores o problemas de instalación, proporcione la siguiente información.
Cuanta más información proporcione, más fácilmente podremos ofrecerle
ayuda y consejo.

Información del entorno

compilado con éxito,
entorno de anaconda,
y usar "conda list" puede mostrar "xgboost".

pero al importar xgboost muestra el error: OSError: /home/yin/anaconda3/bin/../lib/libgomp.so.1: versión `GOMP_4.0' no encontrada (requerida por /home/yin/anaconda3/lib/ python3.5/site-packages/xgboost-0.6-py3.5.egg/xgboost/libxgboost.so)

Sistema Operativo: Ubuntu Kylin 16.10

Compilador:

Paquete utilizado (python/R/jvm/C++): python

xgboost versión utilizada: última

Si instala desde la fuente, proporcione

  1. El hash de confirmación ( git rev-parse HEAD )
  2. Los registros serán útiles (si los registros son grandes, cárguelos como archivo adjunto).

OSError: /home/yin/anaconda3/bin/../lib/libgomp.so.1: versión `GOMP_4.0' no encontrada (requerida por /home/yin/anaconda3/lib/python3.5/site-packages/ xgboost-0.6-py3.5.egg/xgboost/libxgboost.so)

Si está utilizando el paquete python, proporcione:

anaconda

  1. La versión y distribución de python: python 3.5.2
  2. El comando para instalar xgboost si no está instalando desde la fuente

Si está utilizando el paquete R, proporcione

  1. El sessionInfo()
  2. El comando para instalar xgboost si no está instalando desde la fuente

pasos para reproducir

1.
2.
3.

¿Qué has probado?

1.reconstruir el xgboost, no funciona

2.
3.

Comentario más útil

Tal vez puedas probar conda install libgcc , que también puede resolver problemas como este @jiqiujia

Todos 15 comentarios

¿Cómo estás reconstruyendo xgboost?
¿Hiciste un make clean_all y seguido de make -j ?

hola, gracias por sus preocupaciones, el problema se resolvió. el punto clave es que instalé anaconda y el archivo libgomp.so.1 y libstdc++.so.6 en anaconda parece fuera de tiempo, falta GOMP_4.0 y algunos otros archivos ,pero en Ubuntu 16.04 los archivos correspondientes son lo suficientemente nuevos, la solución es hacer algunos archivos de enlace para actualizar los archivos correspondientes en anaconda

Impresionante. Cierra el problema para que no aparezca como no resuelto.

El 21 de noviembre de 2016 a las 11:57 a. m., "yinshurman" [email protected] escribió:

hola, gracias por sus preocupaciones, el problema se ha resuelto. el punto clave es
que instalé anaconda y el archivo libgomp.so.1 y libstdc++.so.6 en
anaconda parece fuera de tiempo, sin GOMP_4.0 y algunos otros archivos, pero en
Ubuntu 16.04 los archivos correspondientes son lo suficientemente nuevos, la solución es hacer
algunos archivos de enlace para actualizar los archivos correspondientes en anaconda


Estás recibiendo esto porque comentaste.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/dmlc/xgboost/issues/1786#issuecomment -261854524, o silenciar
la amenaza
https://github.com/notifications/unsubscribe-auth/ACGUp9c5d-t8t-87qfMLYoJTk5cfW4_rks5rATnYgaJpZM4K2Gx1
.

@yinshurman , ¿te importaría publicar los pasos de la solución?
gracias de antemano

paso 1: use los siguientes comandos para verificar si el archivo libgomp.so.1 en anconda contiene la versión requerida GOMP_4.0 (reemplace la ruta por la suya en todos los pasos):
strings /home/yin/anaconda3/bin/../lib/libgomp.so.1 |grep GOMP (si no hay una versión GOMP_4.0, vaya al paso 2, de lo contrario, deje un comentario)
paso 2: para verificar libgomp.so.1 en su sistema operativo:
sudo find / -name libgomp.so.1*
paso 3: verifique el enlace en anaconda:
ls -al /home/yin/anaconda3/bin/../lib/libgomp.so.1 si el enlace no se vincula a la versión más reciente en la lista del paso 2, cree un nuevo enlace para actualizarlo:
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>
(por ejemplo sudo ln -s /usr/.../libgomp.so.XXX /home/yin/anaconda3/bin/..libgomp.so.1 )
pd: sin mi computadora a mano, no puedo recordar la ruta concreta, pero este método resuelve mis problemas, de hecho, en mi caso, no solo GOMP_4.0 sino también algunos otros archivos no se encuentran (por ejemplo, este https ://github.com/dmlc/xgboost/issues/1700 ), esta solución también funciona bien.

Funcionó. Muchas gracias @yinshurman

@yinshurman .... ¿puede decirme paso a paso que no puedo encontrar la solución para el siguiente error:

importar xgboost
SError: /home/akash/anaconda2/bin/../lib/libgomp.so.1: versión `GOMP_4.0' no encontrada (requerida por /home/akash/anaconda2/lib/python2.7/site-packages/ xgboost/./lib/libxgboost.so

Si, funciona. Estos pasos funcionaron perfectamente para el paquete libeemd y pyeemd. Gracias

¿Hay alguna forma de actualizar libgomp lib en anaconda?
Después de crear un archivo simbólico en uno del sistema, en su lugar informa un error sobre libstdc++.so.6.

Tal vez puedas probar conda install libgcc , que también puede resolver problemas como este @jiqiujia

@yinshurman Muchas gracias. ¡Funciona!

@yinshurman Muchas gracias. Funciona

Experimenté un problema similar, lo solucioné actualizando anaconda gcc de 4.8.5 a 5.4.0:

conda install -c salford_systems gcc-5

@yinshurman Tuve problemas con libgomp.so.1 y libstdc++.so.6 y funcionó para ambos. Gracias.

'GOMP_4.0' no encontrado
Este es un error debido a la falta de coincidencia de las versiones con las que se creó xgboost y las versiones en el entorno conda que usa xgboost en tiempo de ejecución.
La forma más fácil de resolver el problema y no romper nada es compilar xgboost explícitamente con las bibliotecas de conda, para lo cual se debe hacer lo siguiente:

  1. Inicie una nueva terminal
    export LD_LIBRARY_PATH=~/work/anaconda3/lib #or whatever your anaconda install path is
  2. asegúrese de que su python predeterminado sea de la distribución anaconda:
    which python
    De lo contrario, agregue la distribución anaconda a PATH:
    export PATH=~/work/anaconda3/bin:$PATH
  3. Reconstruir y reinstalar xgboost
    cd ~/xgboost
    make clean_all
    make -j4
    cd python-package
    python setup.py install
  4. verificar

ahora puede cerrar la terminal e iniciar una nueva, LD_LIBRARY_PAT no necesita persistir, como env de conda. tengo las bibliotecas requeridas.

¿Fue útil esta página
0 / 5 - 0 calificaciones