Bug 13181

Summary: System.DllNotFoundException: libgalago
Product: Sisyphus Reporter: ildar <ildar>
Component: beagleAssignee: Alexey Shabalin <shaba>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P2 CC: aris, ktirf, lav, msp, oddity, shaba, shrek
Version: unstable   
Hardware: all   
OS: Linux   

Description ildar 2007-10-22 16:16:33 MSD
не знаю точно, кто виноват, но:
Конфигурация - beagle + gaim. Запускаю поиск чего-нибудь, что есть в
логах gaim.

$ beagle-search
Debug: Loading Beagle.Util.Conf+IndexingConfig from
indexing.xml
Debug: Loading Beagle.Util.Conf+DaemonConfig from daemon.xml
Debug: Loading Beagle.Util.Conf+SearchingConfig from searching.xml
Debug: Creating a ResponseMessageException from an ErrorResponse
*** Using mono runtime at mono ***
Exception in Gtk# callback delegate
   Note: Applications can use GLib.ExceptionManager.UnhandledException
to handle the exception.
System.DllNotFoundException: libgalago
   at (wrapper managed-to-native) Galago.Global:galago_init (intptr,int)
   at Galago.Global.Init (System.String name, InitFlags flags)
[0x00000]  at Galago.Global.Init (System.String name) [0x00000]  at
Beagle.Util.GalagoTools.GetPresence (System.String service_id,
System.String username) [0x00000]  at Search.Tiles.IMLog.GetBuddyStatus
() [0x00000]  at Search.Tiles.IMLog.GetDetails () [0x00000]  at
Search.Tiles.Tile.get_Details () [0x00000]  at
Search.MainWindow.ShowInformation (Search.Tiles.Tile tile) [0x00000]
at Search.GroupView.OnTileSelected (System.Object tile,
System.EventArgs args) [0x00000]  at Search.Tiles.Tile.OnFocusInEvent
(Gdk.EventFocus f) [0x00000]  at Gtk.Widget.focusinevent_cb (IntPtr
widget, IntPtr evnt) [0x00000]   at
GLib.ExceptionManager.RaiseUnhandledException(System.Exception e,
Boolean is_terminal)
    at Gtk.Widget.focusinevent_cb(IntPtr widget, IntPtr evnt)
    at Gtk.Widget.focusinevent_cb(IntPtr , IntPtr )
    at Gtk.Widget.gtk_widget_grab_focus(IntPtr )
    at Gtk.Widget.gtk_widget_grab_focus(IntPtr )
    at Gtk.Widget.GrabFocus()
    at Search.Tiles.Tile.OnButtonPressEvent(Gdk.EventButton b)
    at Gtk.Widget.buttonpressevent_cb(IntPtr widget, IntPtr evnt)
    at Gtk.Widget.buttonpressevent_cb(IntPtr , IntPtr )
    at Gtk.Application.gtk_main()
    at Gtk.Application.gtk_main()
    at Gtk.Application.Run()
    at Gnome.Program.Run()
    at Search.MainWindow.Main(System.String[] args)
Comment 1 at@altlinux.org 2007-12-24 12:55:38 MSK
Если поставить пакет libgalago-devel, то может быть заработает.
Comment 2 Alexey Shabalin 2008-01-11 15:02:15 MSK
В общем всё должно работать
в пакете galago-sharp присутствует galago-sharp-0.5.0-dll.config, определяющий
libgalago

<configuration>
  <dllmap dll="libgalago.so" target="libgalago.so.2"/>
</configuration>

PS: у меня проблема возникает только со старыми логами, которые ещё от gaim. Но
это обьясняю тем, что логи pidgin перехали в другое место, старую директорию я
удалил, а в базе beagle где-то застряли пути на старые логи бесед. В недавних
беседах всё ищется и показывается нормально. 
Comment 3 ildar 2008-01-14 08:39:54 MSK
Твоё предположение ложно.
Для фикса нужно:
1. Переименовать файл galago-sharp-0.5.0-dll.config -> galago-sharp.dll.config
2. Исправить содержимое:
-  <dllmap dll="libgalago.so" target="libgalago.so.2"/>
+  <dllmap dll="libgalago" target="libgalago.so.2"/>

Вот тогда БУДЕТ работать.

ЗЫ. На будущее, поделюсь, как было найдено решение:
* если внимательно смотреть на вывод самой программы, можно увидеть, что он
хочет не libgalago.so, а libgalago
* strace -fo /tmp/beagle.stra beagle-search
расскажет, какие файлы он хочет отркрывать
Comment 4 Alexey Shabalin 2008-01-16 14:02:22 MSK
galago-sharp-0.5.0-dll.config - да, здесь я лоханулся.
исправлено, смотри в сизифе.