Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Diamond Fighters  (Прочитано 4293 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн bad_duck

  • Участник
  • *
  • Сообщений: 109
  • Бледнолицый друг пингвинов
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #15 : 07 Августа 2008, 17:55:06 »
SaySmile, логи и конфиги удобно на http://pastebin.ru/ постить.

Оффлайн Nekko

  • Активист
  • *
  • Сообщений: 273
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #16 : 07 Августа 2008, 18:34:36 »
SaySmile, логи и конфиги удобно на http://pastebin.ru/ постить.
спс, буду знать :)

Оффлайн Andru

  • Автор темы
  • Любитель
  • *
  • Сообщений: 65
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #17 : 08 Августа 2008, 04:35:37 »
bad_duck
А случай с зависанием это конечно странно. Опять запускать пробовал?

Оффлайн bad_duck

  • Участник
  • *
  • Сообщений: 109
  • Бледнолицый друг пингвинов
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #18 : 08 Августа 2008, 07:11:36 »
От блин. Я ж хотел тот пост отредактировать. Отписаться о результатах....

В общем после переустановки заработала, я даже прошёл кучу уровней. Сколько играл в неё и в Планет Пингвин, никогда не висло. В данном случае подозреваю (раз уж вылезла часть картинки от Планет Пингвина), что либо они в памяти (видео-памяти, наверное) чего-то не поделили (хотя PPR, разумеется, запущен не был). Либо из-за того, что я обновлял игру ставя новые пакеты "поверх" старых. Наверное надо было после того рестарта ещё несколько раз позапускать для проверки.

Ещё хочу сделать одно отступление. Абсолютно не занимался выяснением причин, т.к. на работе не до этого, да и не важно для меня, но OpenGL скринсейверы, входящие в Hardy, через какой-то случайный промежуток времени вешают иксы наглухо. Т.е. в консоль управление иксы уже не отдают. Но подобного поведения в играх (DF и PPR) ни разу не встречал.
« Последнее редактирование: 08 Августа 2008, 07:18:03 от bad_duck »

Оффлайн Andru

  • Автор темы
  • Любитель
  • *
  • Сообщений: 65
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #19 : 08 Августа 2008, 13:08:22 »
Цитировать
Либо из-за того, что я обновлял игру ставя новые пакеты "поверх" старых.
Не, это вряд ли, там заменяется всего два файла - бинарь игры и библиотека, что собсно и надо было сделать для апдейта, и нет разницы ставить ли их поверх, или начисто.

Цитировать
Абсолютно не занимался выяснением причин, т.к. на работе не до этого, да и не важно для меня, но OpenGL скринсейверы, входящие в Hardy, через какой-то случайный промежуток времени вешают иксы наглухо.
Мистика о_О

Оффлайн bad_duck

  • Участник
  • *
  • Сообщений: 109
  • Бледнолицый друг пингвинов
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #20 : 08 Августа 2008, 16:46:48 »
Думаю мистика тут не при чём. Скорее косяк в дровах на видяху. Когда стоял Debian без дров (лень было руками собирать) опенгл скринсейверы тормозили ужасно, но иксы не вешались.
« Последнее редактирование: 08 Августа 2008, 16:59:06 от bad_duck »

Оффлайн Lion-Simba

  • Старожил
  • *
  • Сообщений: 1126
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #21 : 13 Августа 2008, 21:45:16 »
Поставил, работает :) Играть попозже буду.

Небольшая неприятность при установке на amd64:
libZenGL.so.0.0.18 ложится в /lib32 (и это правильно). Но поскольку игра подгружает его по абсолютному пути в /lib, получаем следующее:
simba@dahari:~$ diamond-fighters
Error while loading ZenGL Engine
Runtime error 217 at $0804909D
  $0804909D
  $08048A19
  $080482D1

Предлагаемый workaround: линковать бинарник все-таки статически и по относительному имени без папки (например: libZenGL.so). Тогда линуксовый динамический линковщик (ld) будет ее искать в правильной папке.

Предлагаемый fix: сделать пакеты для amd64 :)
Оказываю индивидуальную платную техподдержку широкого профиля. Обращаться в ЛС или Jabber.

Оффлайн Andru

  • Автор темы
  • Любитель
  • *
  • Сообщений: 65
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #22 : 14 Августа 2008, 03:42:09 »
Lion-Simba
Хм, странно. На других протестированных системах все работало(игра ищет просто libZenGL.so, и уже зависимо от того что прописано в ld, там и будет искать либы по очереди). Правда libZenGL.so.0.0.18 это уже давненько было. Последняя 0.0.22, и теперь она не нумеруется после .so, и тут сборки пакета для amd64 нет... А что касается того чтобы сделать нативный 64-битный код, то были траблы с этим. Движок немного пофиксил от хаков для 32-битных систем, обновил компилятор FPC до версии 2.2.2, попробую еще раз :) Правда некуда ща ставить х86_64 систему, а qemu хоть убей падает в кернел паник при установке, либо просто висит. Это последняя сборка из svn'а, а старенький 0.8 банально тормозит и установка в случаи с OpenSUSE 64-бита так и не завершилась...

Оффлайн Lion-Simba

  • Старожил
  • *
  • Сообщений: 1126
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #23 : 14 Августа 2008, 08:29:47 »
Lion-Simba
Хм, странно. На других протестированных системах все работало(игра ищет просто libZenGL.so, и уже зависимо от того что прописано в ld, там и будет искать либы по очереди).
Ну вот смотри:
simba@dahari:~$ ldd `which diamond-fighters`
linux-gate.so.1 =>  (0xffffe000)
libdl.so.2 => /lib32/libdl.so.2 (0xf7f98000)
libc.so.6 => /lib32/libc.so.6 (0xf7e49000)
/lib/ld-linux.so.2 (0xf7fb8000)
Не видно, чтобы бинарник был слинкован с libZenGL.

Правда libZenGL.so.0.0.18 это уже давненько было. Последняя 0.0.22, и теперь она не нумеруется после .so,
Как так давненько? Я только вчера скачал deb-пакеты, выложенные по ссылке в первом посте. Я скачал не последнюю версию?
Оказываю индивидуальную платную техподдержку широкого профиля. Обращаться в ЛС или Jabber.

Оффлайн Andru

  • Автор темы
  • Любитель
  • *
  • Сообщений: 65
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #24 : 14 Августа 2008, 22:58:34 »
Цитировать
Не видно, чтобы бинарник был слинкован с libZenGL.
да, он не слинкован. Для подгрузки libZenGL.so используется функция dlopen, и та в свою очередь ищет переданное имя "libZenGL.so" в сис. каталогах.

Цитировать
Как так давненько? Я только вчера скачал deb-пакеты, выложенные по ссылке в первом посте. Я скачал не последнюю версию?[/qoute]
Хммм... 0.0.18 я заливал уже довольно таки давно, и по ссылке(http://code.google.com/p/diamond-fighters/downloads/list) в первом посте лежит 0.0.22

Оффлайн Lion-Simba

  • Старожил
  • *
  • Сообщений: 1126
    • Просмотр профиля
Re: Diamond Fighters
« Ответ #25 : 15 Августа 2008, 08:00:18 »
Точно. Посмотрел содержимое деб-пакета и обнаружил там libZenGL.so.
Видимо 0.18 у меня осталась от более старой установки.

Ну тогда да. Тогда всё ведет себя именно так, как и ведут себя i386-приложения на amd64 системе. :) То есть, требуется перекладывать libZenGL.so из /usr/lib в /usr/lib32.
Оказываю индивидуальную платную техподдержку широкого профиля. Обращаться в ЛС или Jabber.

 

Страница сгенерирована за 0.062 секунд. Запросов: 22.