Рейтинг:7

Ошибка libGL: не удалось загрузить драйверы iris и swrast в Ubuntu 20.04

флаг us

У меня есть несколько проблем (см. сообщения ниже) с запуском сторонних научных программ (например, coot, pymol или chimera).

Я использую бинарник coot (0.9.5). Chimera — это сборка 1.14 42018. Ubuntu 20.04.2 LTS Gnome. Я использую pymol-open-source с Github.

Графическая карта: VGA-совместимый контроллер: Intel Corporation UHD Graphics 620 (Whiskey Lake)
Модель: ЦП Intel(R) Core(TM) i7-8565U с тактовой частотой 1,80 ГГц

Похоже, что есть некоторые проблемы с диафрагмой и swrast (см. сообщение ниже).

Я всегда получаю это сообщение для химеры:

Ошибка libGL: MESA-LOADER: не удалось открыть радужную оболочку: /usr/lib/dri/iris_dri.so: невозможно открыть общий объектный файл: нет такого файла или каталога (пути поиска /usr/lib/x86_64-linux-gnu/dri: \$${ORIGIN}/dri:/usr/lib/dri)
Ошибка libGL: не удалось загрузить драйвер: радужная оболочка
Ошибка libGL: MESA-LOADER: не удалось открыть радужную оболочку: /usr/lib/dri/iris_dri.so: невозможно открыть общий объектный файл: нет такого файла или каталога (пути поиска /usr/lib/x86_64-linux-gnu/dri: \$${ORIGIN}/dri:/usr/lib/dri)
Ошибка libGL: не удалось загрузить драйвер: радужная оболочка
Ошибка libGL: MESA-LOADER: не удалось открыть swrast: /usr/lib/dri/swrast_dri.so: невозможно открыть общий объектный файл: нет такого файла или каталога (пути поиска /usr/lib/x86_64-linux-gnu/dri: \$${ORIGIN}/dri:/usr/lib/dri)
Ошибка libGL: не удалось загрузить драйвер: swrast
X Ошибка неудачного запроса: BadValue (целочисленный параметр вне допустимого диапазона для операции)
  Основной код операции неудачного запроса: 152 (GLX)
  Второстепенный код операции неудачного запроса: 3 (X_GLXCreateContext)
  Значение в неудачном запросе: 0x0
  Серийный номер неудачного запроса: 890
  Текущий серийный номер в выходном потоке: 891

Я получил это сообщение для pymol:

Qt недоступен, используется интерфейс GLUT/Tk
Ошибка libGL: MESA-LOADER: не удалось открыть радужную оболочку: /usr/lib/dri/iris_dri.so: невозможно открыть общий объектный файл: нет такого файла или каталога (пути поиска /usr/lib/x86_64-linux-gnu/dri: \$${ORIGIN}/dri:/usr/lib/dri)
Ошибка libGL: не удалось загрузить драйвер: радужная оболочка
Ошибка libGL: MESA-LOADER: не удалось открыть радужную оболочку: /usr/lib/dri/iris_dri.so: невозможно открыть общий объектный файл: нет такого файла или каталога (пути поиска /usr/lib/x86_64-linux-gnu/dri: \$${ORIGIN}/dri:/usr/lib/dri)
Ошибка libGL: не удалось загрузить драйвер: радужная оболочка
Ошибка libGL: MESA-LOADER: не удалось открыть swrast: /usr/lib/dri/swrast_dri.so: невозможно открыть общий объектный файл: нет такого файла или каталога (пути поиска /usr/lib/x86_64-linux-gnu/dri: \$${ORIGIN}/dri:/usr/lib/dri)
Ошибка libGL: не удалось загрузить драйвер: swrast
freeglut Невозможно создать контекст OpenGL 1.0 (флаги 0, профиль 0)
X Ошибка неудачного запроса: BadValue (целочисленный параметр вне допустимого диапазона для операции)
  Основной код операции неудачного запроса: 152 (GLX)
  Второстепенный код операции неудачного запроса: 24 (X_GLXCreateNewContext)
  Значение в неудачном запросе: 0x0
  Серийный номер неудачного запроса: 50
  Текущий серийный номер в выходном потоке: 51
 PyMOL: резкое завершение программы.

Спасибо за помощь.


lsmod | grep 
ДРМ rm_kms_helper 184320 1 i915 
syscopyarea 16384 1 drm_kms_helper
sysfillrect 16384 1 drm_kms_helper 
sysimgblt 16384 1 drm_kms_helper 
fb_sys_fops 16384 1 drm_kms_helper 
drm 491520 9 drm_kms_helper, i915
$ glxinfo | grep Поставщик
Поставщик: Центр технологий Intel с открытым исходным кодом (0x8086)
$ lshw -C видео 
ВНИМАНИЕ: вы должны запускать эту программу как суперпользователь. 
*-отображать 
описание: VGA-совместимый контроллер 
продукт: UHD Graphics 620 (Whiskey Lake) 
производитель: корпорация Intel 
физический идентификатор: 2 
информация о шине: pci@0000:00:02.0 
версия: 00 
ширина: 64 бита 
часы: 33 МГц 
возможности: vga_controller bus_master cap_list rom 
конфигурация: драйвер=i915 задержка=0 
ресурсы: irq: 150 память: 9b000000-9bffffff память: 50000000-5ffffffff ioport: 3000 (размер = 64) 
память: c0000-dffff
$ тщетно 
Информация о libva: VA-API версии 1.7.0 
Информация о libva: попытка открыть /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so 
Информация о libva: найдена функция инициализации __vaDriverInit_1_7 
Информация о libva: va_openDriver() возвращает 0 
vainfo: Версия VA-API: 1.7 (libva 2.6.0) 
vainfo: Версия драйвера: драйвер Intel iHD для Intel(R) Gen Graphics — 20.1.1 () 
vainfo: поддерживаемый профиль и точки входа
VAProfileMPEG2Simple : VAEntrypointVLD 
VAProfileMPEG2Main : VAEntrypointVLD 
VAProfileH264Main : VAEntrypointVLD 
VAProfileH264Main : VAEntrypointEncSliceLP 
VAProfileH264High : VAEntrypointVLD 
ВАпрофилех264хигх : ваэнтрипойнтэнкслиселп 
VAProfileJPEGBaseline : VAEntrypointVLD 
VAProfileJPEGBaseline : VAEntrypointEncPicture
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
VAProfileVP8Version0_3 : VAEntrypointVLD 
VAProfileHEVCMain : VAEntrypointVLD 
VAProfileHEVCMain10 : VAEntrypointVLD 
VAProfileVP9Profile0 : VAEntrypointVLD 
VAProfileVP9Profile2 : VAEntrypointVLD
N0rbert avatar
флаг zw
Как ты устанавливал coot и chimera? Какие версии вы используете? Какова ваша текущая среда рабочего стола?
Tam Heng Keat avatar
флаг us
Я использую бинарник coot (0.9.5). Chimera — это сборка 1.14 42018. Ubuntu 20.04.2 LTS Gnome.
N0rbert avatar
флаг zw
Пожалуйста, установите утилиту `vainfo` и `lshw` с помощью `sudo apt-get install vainfo lshw`, затем запустите ее с `vainfo` и добавьте вывод к вопросу. Также добавьте вывод `lsmod | grep drm`, `glxinfo | grep Vendor`, `lshw -C video` на вопрос. Поделитесь, пожалуйста, ссылками на дистрибутивы программ.
Tam Heng Keat avatar
флаг us
lsmod | grep дрм rm_kms_helper 184320 1 i915 syscopyarea 16384 1 drm_kms_helper sysfillrect 16384 1 drm_kms_helper sysimgblt 16384 1 drm_kms_helper fb_sys_fops 16384 1 drm_kms_helper drm 491520 9 drm_kms_helper,i915
Tam Heng Keat avatar
флаг us
glxinfo | grep Поставщик Поставщик: Центр технологий Intel с открытым исходным кодом (0x8086)
Tam Heng Keat avatar
флаг us
lshw -C видео ВНИМАНИЕ: вы должны запускать эту программу как суперпользователь. *-отображать описание: VGA-совместимый контроллер продукт: UHD Graphics 620 (Whiskey Lake) производитель: корпорация Intel физический идентификатор: 2 информация о шине: pci@0000:00:02.0 версия: 00 ширина: 64 бита часы: 33 МГц возможности: vga_controller bus_master cap_list rom конфигурация: драйвер=i915 задержка=0 ресурсы: irq:150 память:9b000000-9bffffff память:50000000-5ffffffff ioport:3000(размер=64) память:c0000-dffff
Tam Heng Keat avatar
флаг us
напрасно Информация о libva: VA-API версии 1.7.0 Информация о libva: попытка открыть /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so Информация о libva: найдена функция инициализации __vaDriverInit_1_7 Информация о libva: va_openDriver() возвращает 0 vainfo: Версия VA-API: 1.7 (libva 2.6.0) vainfo: Версия драйвера: драйвер Intel iHD для Intel(R) Gen Graphics — 20.1.1 () vainfo: поддерживаемый профиль и точки входа
Tam Heng Keat avatar
флаг us
vainfo VAProfileMPEG2Simple : VAEntrypointVLD VAProfileMPEG2Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointEncSliceLP VAProfileH264High : VAEntrypointVLD ВАпрофилех264хигх : ваэнтрипойнтэнкслиселп VAProfileJPEGBaseline : VAEntrypointVLD VAProfileJPEGBaseline : VAEntrypointEncPicture
Tam Heng Keat avatar
флаг us
vainfo VAProfileH264ConstrainedBaseline: VAEntrypointVLD VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP VAProfileVP8Version0_3 : VAEntrypointVLD VAProfileHEVCMain : VAEntrypointVLD VAProfileHEVCMain10 : VAEntrypointVLD VAProfileVP9Profile0 : VAEntrypointVLD VAProfileVP9Profile2 : VAEntrypointVLD
N0rbert avatar
флаг zw
Пожалуйста, переместите все последние комментарии в тело вопроса!
Tam Heng Keat avatar
флаг us
Что вы имели в виду под «переместить все последние комментарии в тело вопроса»?
N0rbert avatar
флаг zw
Сделано это для вас. Не вижу проблем с графическими драйверами. Возможно, у вас есть устаревшие локальные библиотеки внутри папок приложений.
Рейтинг:3
флаг cn

У меня была такая же проблема с Kiwix в Linux Mint, и я нашел ваш вопрос. Я смог решить свою проблему, прочитав: https://github.com/kiwix/kiwix-desktop/issues/393. Проблема, которую я понял, заключается в том, что драйвер радужной оболочки настроен в Ubuntu для использования по умолчанию на ноутбуках, тогда как в моем случае графическая карта моего старого ноутбука поддерживает более старый драйвер. Таким образом, решение/обходной путь состоит в том, чтобы установить переменную среды перед запуском приложения в командной строке, например:

MESA_LOADER_DRIVER_OVERRIDE=i965 ./kiwix-deskop

Надеюсь, это поможет и вам.

P.S. если вы хотите попытаться установить эту переменную на постоянной основе, и ничего больше не сломается, см.: Как навсегда установить переменную окружения

Рейтинг:2
флаг dz

I ran into a similar problem when trying to run a python app in a virtual environment (anaconda3). It turned out that the library libstdc++.so used by the virtual env was different from the one used by the OS.

I needed first to find out the full paths to libraries involved:

DISPLAY=:0 LIBGL_DEBUG=verbose python test.py

This gave me a hint that the libstdc++.so.6 used here might be different from the one used by OS:

libGL: MESA-LOADER: failed to open /usr/lib/x86_64-linux-gnu/dri/i965_dri.so: /home/fairfax/anaconda3/envs/py3/bin/../lib/libstdc++.so.6
: version `CXXABI_1.3.8' not found (required by /usr/lib/x86_64-linux-gnu/dri/i965_dri.so)

Then I checked out the library used by the virtual env:

strings /home/fairfax/anaconda3/envs/py3/bin/../lib/libstdc++.so.6 | grep CXXABI

To find out that the flag CXXABI_1.3.8 was indeed missing. I was able to fix this by overwriting the virtual env version with the system version of libstdc++.so.6 and redirecting all symbolic links to the new version:

$~/anaconda3/envs/py3/lib$ ls -al | grep libstdc++     
 lrwxrwxrwx  1 fairfax fairfax       19 lis  1 08:55 libstdc++.so -> libstdc++.so.6.0.25                                                
lrwxrwxrwx  1 fairfax fairfax       19 lis  1 08:55 libstdc++.so.6 -> libstdc++.so.6.0.25                                              
-rw-r--r--  1 fairfax fairfax  1594864 říj 29 16:27 libstdc++.so.6.0.25
vuvu avatar
флаг us
Хорошее решение, спасибо! Была очень похожая ошибка, увидел ваш ответ, обнаружил, что все мои элементы anaconda3 libstdc++.so.6 являются ссылками на libstdc++.so.6.0.24, переместил это в сторону [на libstdc++.so.6.0.24.orig] и сделал ссылку на предоставленный системой /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28 с исходным именем файла anaconda3+местоположение, и все работало без нареканий!
Рейтинг:1
флаг zw

На уровне пакета это может быть исправлено путем установки не замужем упаковка:

sudo apt-get установить libgl1-mesa-dri

Тогда о пакетах:

  • Pymol упакован в Ubuntu с версия 2.3.0, поэтому его можно установить

    вселенная sudo add-apt-repository
    sudo apt-get установить pymol
    
Tam Heng Keat avatar
флаг us
Я сделал «sudo apt-get install libgl1-mesa-dri», но это не сработало. Я использую pymol-open-source с Github. Я также попробовал «sudo apt-get install pymol», и он тоже не работает.
Tam Heng Keat avatar
флаг us
Интересно, это связано с графической картой, так как мне удается запускать все эти программы с помощью «export MESA_LOADER_DRIVER_OVERRIDE=i965» в bash.
Alexei Martianov avatar
флаг cn
@Tam Heng Keat, я написал свой ответ, не читая ваши комментарии здесь. Мой ответ в основном касается обходного пути, который, как я вижу, вы уже знаете, но надеюсь, что он все еще полезен, поскольку я добавил ссылку и объяснение основной причины проблемы.
Рейтинг:0
флаг ng

After many searches, I found a stack overflow post with more helpful answers for me at https://stackoverflow.com/questions/48453497/anaconda-libstdc-so-6-version-glibcxx-3-4-20-not-found

[Edit: OK, I solved my problem with the below steps, but now sometimes (not always!) when I run my python programs in this environment it gives the message free(): invalid pointer when my python program terminates, which is scary and undesirable. Though, it's a shorter error message so I'm keeping it for now :P]

Here's how I solved my problem:

  1. I installed the latest version of gcc
conda install libgcc

After I tested it, it still didn't work for me, but maybe it will work for you.

  1. I checked to see what kinds of linker files I had.
sudo find / -wholename "*conda*/**/libstdc++.so*"

Among other output files were the files (this environment is called moon)

/home/alex/miniconda3/envs/moon/x86_64-conda_cos6-linux-gnu/sysroot/lib/libstdc++.so.6
/home/alex/miniconda3/envs/moon/x86_64-conda_cos6-linux-gnu/sysroot/lib/libstdc++.so.6.0.26
/home/alex/miniconda3/envs/moon/x86_64-conda_cos6-linux-gnu/sysroot/lib/libstdc++.so
/home/alex/miniconda3/envs/moon/lib/libstdc++.so.6
/home/alex/miniconda3/envs/moon/lib/libstdc++.so.6.0.26
/home/alex/miniconda3/envs/moon/lib/libstdc++.so
/home/alex/miniconda3/envs/moon/lib/libstdc++.so.6.0.21

Before installing libgcc with conda, I only had the files

/home/alex/miniconda3/envs/moon/lib/libstdc++.so.6
/home/alex/miniconda3/envs/moon/lib/libstdc++.so.6.0.28
/home/alex/miniconda3/envs/moon/lib/libstdc++.so

You are supposed to have exactly 3 files that look something like this in your directory - there was a duplicate created for some reason.

I decided to try getting rid of all of the files that were similar to the old ones with

rm /home/alex/miniconda3/envs/moon/lib/libstdc++*

And after this, my error message disappeared.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.