После установки драйвера Nvidia, когда я пытаюсь запустить Steam, я получаю эту ошибку:
steam: error while loading shared libraries: libGL.so.1: wrong ELF class: ELFCLASS64
Я нашел этот вопрос и один из ответов, которые предлагают установить:
sudo apt-get install libgl1-mesa-glx:i386
Я уже установил libgl1-mesa-glx:i386
. Чем я это нашел . Он предлагает сделать символическую ссылку на 32-битную libGL. Как это сделать? Есть ли у вас другие предложения?
sudo aptitude install libgl1-mesa-glx:i386
показывает, что 305 пакетов будут удалены, а около 100 будут не разрешены. Поскольку это выглядит так, как будто это заполняет мою систему, я подозреваю, что лучший способ действий - это двойная загрузка Ubuntu с 64 библиотеками и 32-битной библиотекой или, что лучше, одна основная система для большинства вещей, одна 64-битная установка для игр и 32-битный экземпляр на собственный раздел для 32-битных игр.Ответы:
Эта проблема в 64-битных системах вызвана тем,
/usr/lib
что она раньше,LD_LIBRARY_PATH
чем/usr/lib32
. Steam пробует 64-битные библиотеки и жалуется, не глядя дальше.Однако это можно исправить с помощью in,
~/Steam/steam.sh
но этот файл, похоже, восстанавливается в исходную версию при каждом запуске Steam.Я исправил это, создав скрипт, который делает это:
Это зависит
/usr/lib32
от пути к библиотеке, затем запускается steam (с оригинальными аргументами скрипта). Сейчас он/usr/lib32
находится в пути/usr/lib
, и steam успешно использует 32-битные библиотеки.Вы также можете добавить строку
до
/usr/bin/steam
, это будет иметь тот же эффект, если вы добавите его до самой последней строки. Вам нужно будет sudo для редактирования/usr/lib/steam
./usr/bin/steam
, вероятно, будет перезаписано при обновлении Steam.Я использую последний метод, сохраняя сценарий в качестве резервной копии. Таким образом, если это
/usr/bin/steam
будет перезаписано, я могу просто скопировать, вставить строку снова из сценария, чтобы исправить это.источник
Исправлено в raring ringtail (xubuntu 13.04) с драйверами nVidia 319.17, добавив
/usr/lib32
в новый файл:затем работает:
Поскольку файл
/etc/ld.so.conf
содержитinclude /etc/ld.so.conf.d/*.conf
, любой файл в этом каталоге с расширением.conf
анализируется.источник
От: https://github.com/ValveSoftware/steam-for-linux/issues/321
Я получил ту же проблему и решил ее следующим образом:
Это сработало и для меня.
источник
Исправлено это для Mint 14 с новейшими 64-битными драйверами Nvidia 310.32 с поддержкой 32-битных драйверов, установленной в
добавлением
После первого
"export"
в начале/usr/bin/steam
файла.источник
Я столкнулся с той же проблемой, но с скайпом . Все вышеперечисленные решения (создание символических ссылок, настройка LD_LIBRARY_PATH) не сработали для меня.
Я наконец нашел помощь в посте, уже упомянутом выше - но с другим решением.
Похоже, что программа обновления nvidia (при запросе разрешения на установку библиотек 32-битной совместимости OpenGL) испортилась и удалилась,
/usr/lib/i386-linux-gnu/mesa/libGL.so.1
и/usr/lib/i386-linux-gnu/mesa/libGL.so
.Переустановка библиотеки libgl1 помогла:
sudo apt-get install --reinstall libgl1-mesa-glx:i386
источник
Если вы используете ограниченную бета-версию Steam для Linux, я опубликую это на форумах Steam для Linux . Они должны иметь лучшую помощь, и если это проблема с самим программным обеспечением, разработчики смогут исправить это. Кроме того, если вы используете 64-битную ОС, там много людей, которые, вероятно, прошли через проблемы, которые у вас есть, и, следовательно, точно знают, что делать.
источник
У меня была точно такая же проблема на 64-битной Linux Mint Debian Edition 2.
Я решил эту проблему путем переустановки драйверов NVIDIA с 32-битными библиотеками GL (после установки этих библиотек steam запрашивал).
Я просто предполагаю, что установка этих 32-битных графических библиотек нарушает некоторые связи, а переустановка драйверов NVIDIA с этими реальными 32-битными библиотеками устраняет проблему линковки.
источник
У меня была эта проблема со скайпом. Я исправил это, установив официальный драйвер Nvidia снова и установив 32-битную библиотеку совместимости во время установки.
источник