@RA
RA
01 Jun 2015

Поинт, нужны твои скилы по решению проблемы с играми на соурс-движке (cs, halflife)

Есть ubuntu 14.04 x64, есть steam с cs, halflife, есть бук с nvidia 740m и интеловской графикой, есть bumblebee, есть дрова nvidia-331 из репы убунты. И всё это прекрасно работало. Но внезапно примерно 2 недели назад контра и халф перестали запускаться (остальные игрушки работают). При этом проблемные игры легко запускаются на интеловской графике (качество говно конечно).

Что перепробовано
1. Сверил лог запуска на интеловской графике и на нвидии. Он одинаков, только на нвидии он заканчивается словами, что игра выгружена.
2. Проверил целосность файлов.
3. Ушел с бета на стабильный steam.
4. Попробовал дрова nvidia-352. Бубунта не загрузилась, пришлось отказаться.
5. Снёс bumblebee, поставил nvidia-prime. Тут вообще всё плохо. Стим запускается с ошибкой, игры говорят, что не могут найти какой-то opengl функции. Вернулся на bumblebee.
6. В сети находятся рецепты, что нужно удалить некоторые библиотеки из стим клиента. Все они не работают.
7. Удалил стим, поставил заново.

Всё это не дало никакого эффекта. Куда копать и что чинить?

01 Jun 2015

Может с обновлением ядра связано?

01 Jun 2015

тоже об этом подумал, когда старые ядра удалял.

#vnpcf/2 в ответ на /1
01 Jun 2015

А не пробовал модуль для видяхи не из деба ставить, а собирать с сайта нвидии?

#vnpcf/3 в ответ на /2
01 Jun 2015

пока нет.

#vnpcf/4 в ответ на /3
01 Jun 2015

Плюс как бы логично было бы показать, что в консоль сыплет игра при запуске.

#vnpcf/6 в ответ на /5
01 Jun 2015

лог на интеловской карте (всё работает)
Game update: AppID 240 "Counter-Strike: Source", ProcID 7057, IP 0.0.0.0:0
ERROR: ld.so: object '/home/ra/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/ra/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 7060 != 7059, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/ra/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/ra/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
SDL video target is 'x11'
SDL video target is 'x11'
Using breakpad crash handler
Setting breakpad minidump AppID = 240
Forcing breakpad minidump interfaces to load

01 Jun 2015

лог на nvidia под bumblebee (не работает)

Game update: AppID 240 "Counter-Strike: Source", ProcID 8156, IP 0.0.0.0:0
ERROR: ld.so: object '/home/ra/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/ra/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 8160 != 8158, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/ra/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/ra/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
pid 8159 != 8158, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/ra/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ATTENTION: default value of option vblank_mode overridden by environment.

malloc: unknown:0: assertion botched
free: called with unallocated block argument
last command: (null)
Aborting...Aborted (core dumped)
Game removed: AppID 240 "Counter-Strike: Source", ProcID 8156

01 Jun 2015

Там, кстати, даже какой-то фикс предлагают. Пробуй, короче.

#vnpcf/10 в ответ на /9
01 Jun 2015

ага нород пишет, что всё сломол какой-то апдейт из xorg-edgers. Видимо этот апдейт докатился до реп убунты.

#vnpcf/11 в ответ на /10
01 Jun 2015

Спасибо, skobkin-ru! Это то что надо. Всё вылечил рецепт

#!/bin/bash
# https://github.com/ValveSoftware/steam-for-linux/issues/3506#issuecomment-102565272

# create a temporary directory
mkdir SteamFixTempDir
cd ./SteamFixTempDir

wget http://snapshot.debian.org/archive/debian/20140810T163814Z/pool/main/libd/libdrm/libdrm-intel1_2.4.56-1_i386.deb
wget http://snapshot.debian.org/archive/debian/20140810T163814Z/pool/main/libd/libdrm/libdrm-intel1_2.4.56-1_amd64.deb

#  32-bit
# unpack the .deb and unarchive data.tar.xz
ar p libdrm-intel1_2.4.56-1_i386.deb data.tar.xz | tar xvJ
# copy the library and link
cp ./usr/lib/i386-linux-gnu/* ~/.steam/steam/ubuntu12_32/

#  64-bit
# unpack the .deb and unarchive data.tar.xz
ar p libdrm-intel1_2.4.56-1_amd64.deb data.tar.xz | tar xvJ
# copy the library and link
cp ./usr/lib/x86_64-linux-gnu/* ~/.steam/steam/ubuntu12_64/

# cleanup
cd ..
rm -rf ./SteamFixTempDir
#vnpcf/12 в ответ на /10
01 Jun 2015

Спасибо гуглу и гитхабу, я просто вбил в первый строчку из того, что ты скопипастил :)

#vnpcf/13 в ответ на /12
01 Jun 2015

значит у тебя другой гугл. Мне показывает совсем другое.

#vnpcf/14 в ответ на /13
01 Jun 2015

Я вбил malloc: unknown:0: assertion botched, а ты?

#vnpcf/15 в ответ на /14
01 Jun 2015

Ну, точнее, "steam linux malloc: unknown:0: assertion botched".

#vnpcf/16 в ответ на /15
01 Jun 2015

ERROR: ld.so: object '/home/ra/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.

#vnpcf/17 в ответ на /16
01 Jun 2015

Ясны. А я счёл это менее значимым и менее лаконичным.

#vnpcf/18 в ответ на /17
01 Jun 2015

я счёл "malloc: unknown:0: assertion botched" какой-то общей ошибкой без конкретики, поэтому проигнорил

#vnpcf/19 в ответ на /18

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.