[sisyphus] Fwd: Странные проблемы с работоспособностью последних galeon'ов

Michael Shigorin =?iso-8859-1?q?mike_=CE=C1_osdn=2Eorg=2Eua?=
Пн Авг 16 15:27:53 MSD 2004


	Здравствуйте.
У Алексея проблемы с добирательством писем до sisyphus@,
переправляю.

----- Forwarded message from Alexey Morozov <alex-altlinux на idisys.iae.nsk.su> -----

Date: Fri, 13 Aug 2004 14:11:33 +0700
From: Alexey Morozov <alex-altlinux на idisys.iae.nsk.su>
To: Sisyphus mailing list <sisyphus на altlinux.ru>
Subject: Странные проблемы с работоспособностью последних galeon'ов

В общем, приехали, кажется :-).

некоторое время назад я обнаружил странную проблему со
работоспособностью galeon (на тот момент - galeon-1.3.16-alt2).
Все, вроде бы, работало, но наблюдались проблемы с некоторыми диалогами.
Проблемы эти описаны на http://bugzilla.gnome.org/show_bug.cgi?id=149617

Тогда мне показалось, что дело в том, что я слишком давно не делал
апгрейд своего Сизифа и попросту нарвался на скрытую бинарную
несовместимость с новыми библиотеками. Пересобрав galeon 8 августа
(и получив galeon-1.3.16-alt2.1.athlon.rpm), я решил, что проблема
решена.

Однако я рано радовался. Сподвигнув Мишу Шигорина на пересборку пакета
galeon, я решил, спустя некоторое время (и некоторое количество апдейтов
пакетов), заменить самособранный galeon-1.3.16-alt2.1 на "стандартный"
galeon-1.3.16-alt4. Каково же было мое удивление, когда я напоролся на
ту же проблему, которую считал решенной.

В общем, вчера ночером (ушел я отсюда в 6 утра, так что звыняйте,
изложение несколько сумбурно :-)), я дошел до следующего:

1. module-test из glib-2.4.5/tests/ собирается и _работает_, в том
числе добавленный мной в module-test.c тест вида

G_MODULE_EXPORT
void some_func(void)
{
   g_warning("this is %s", __FUNCTION__);
}

...
int
main(int   arg,
     char  *argv[])
{
...
    module_self = g_module_open (NULL, G_MODULE_BIND_LAZY);
    if (!module_self)
        g_error ("error: %s", g_module_error ());

    if (!g_module_symbol (module_self, "some_func", (gpointer *)&f_self))
        g_error ("error: %s", g_module_error ());

    ((SimpleFunc)f_self)();
...

Этот же тест, будучи перенесенным в galeon-1.3.16/src/galeon-main.c
ПЕРЕСТАЕТ работать. То есть, g_module_open отрабатывает, а вот
g_module_symbol не находит some_func, равно как и любую другую функцию,
определенную в бинарнике galeon-bin, а не загруженную из какой-либо
shlib (проверялось на libc/puts). Причем, по-видимому, проблема не в
кривых руках glib'описателей (точнее, вероятно, не только в них), т.к.
g_module_symbol является, по сути, тонкой прокладкой над dlsym.

Я хуже скажу, оставшийся у меня на диске galeon-1.3.16-alt2.1,
собранный локально 8го сентября, _продолжает_ нормально работать. А вот
если из соответствующего ему SRPM'а собрать новый RPM, то тот, новый
galeon-bin уже оказывается нерабочим (в контексте описанной проблемы).
Как говорится, "мир изменился, я чувствую это в воздухе..."

Если у кого-нибудь появятся внятные советы, что и как можно попробовать
поправить, или, хотя бы, потестировать, милости прошу, что называется.
Или, хотя бы проверьте, что у вас работают в галеоне соотвестсвующие
диаложки. Для этого достаточно зайти на ftp://ftp.altlinux.ru/,
кликнуть (БЕЗ shift'а!!) на каком-нибудь RPM и попробовать скачать его
(нажав на "Сохранить") или открыть в приложении. Ну, и пронаблюдать,
конечно, что делается ~/.xsession-errors:0 в момент _показа_ данного
диалога.




----- End forwarded message -----

-- 
 ---- WBR, Michael Shigorin <mike на altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/sisyphus/attachments/20040816/8dc77aed/attachment-0003.bin>


Подробная информация о списке рассылки Sisyphus