On Thu, Apr 20, 2006 at 12:59:25PM +0300, Igor Zubkov wrote: > А теперь, научно-популярно. На примере пакета devilspie: > devilspie /usr/bin/devilspie > glib2 /usr/lib/libglib-2.0.so.0.800.4 glib2 /usr/lib/libglib-2. > 0.so.0.1000.2 libglib-2.0.so.0 T g_intern_static_string > > devilspie /usr/bin/devilspie > glib2 /usr/lib/libglib-2.0.so.0.800.4 glib2 /usr/lib/libglib-2. > 0.so.0.1000.2 libglib-2.0.so.0 T g_slice_alloc0 > > devilspie /usr/bin/devilspie > glib2 /usr/lib/libglib-2.0.so.0.800.4 glib2 /usr/lib/libglib-2. > 0.so.0.1000.2 libglib-2.0.so.0 T g_slice_free1 > > Самый простой способ починить этот пакет, прибить гвоздями минимальную версию > glib2 для использования. В текущий момент это (это та версия которая сейчас > лежит в репозитории): > [icesik@iceberg ~]$ rpm -q glib2 > glib2-2.10.2-alt1 > [icesik@iceberg ~]$ > Т.е.: > Requires: glib2 >= 2.10.2-alt1 > > Второй способ (более правильный, но более сложный), найти версию glib2 в > которой были добавлены эти символы и прописать её в Requires. Ещё более правильный способ - наладить symbol versioning у glib2. Тогда все пакеты, которые используют g_intern_static_string и т.п., автоматически получат зависимость вида libglib-2.0.so.0(GLIB_ВЕРСИЯ). Я же делал такую штуку для 2.8. Не знаю, для 2.10 было это сделано или нет. Посмотрю на досуге. :)