On Sat, 21 Oct 2006, Joerg Sonnenberger wrote: > On Sat, Oct 21, 2006 at 06:21:00AM -0700, walt wrote: > > I'm still plugging away at evolution, try to find why it runs > > properly as root, but not as a user. > > > > I've tracked the problem down to one system call in libgmodule.so > > which is part of glib2: > > > > (gdb) > > _g_module_symbol (handle=0x294b2500, symbol_name=0x2897c57d > > "Bonobo_Plugin_info") > > at gmodule-dl.c:144 > > 144 p = dlsym (handle, symbol_name); > > (a) Can you find out which DSO handle refers to? E.g. break point on > dlopen and remembering the result or finding the matching dlopen. > > (b) What is symbol_name?
DSO means dynamic shared object (i.e. library)? When starting evolution as an ordinary user I see the same error for every library in /usr/pkg/lib/evolution/2.8/components/: (evolution-2.8:58237): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.8': Can't find symbol Bonobo_Plugin_info in `/usr/pkg/lib/evolution/2.8/components/libevolution-mail.so' [snip four other libs with the same error]. Each time the symbol_name is 'Bonobo_Plugin_info': $ nm /usr/pkg/lib/evolution/2.8/components/libevolution-mail.so |grep Plugin 000c9b80 D Bonobo_Plugin_info I can use 'nm' to access that symbol as an ordinary user, so why can't evolution do the same? evolution --> libbonobo-activation.so --> libgmodule-2.0.so --> ld-elf.so.2 and this works perfectly as root, but fails as a luser. Maybe I can figure out how to compile ld-elf with debugging info while I'm waiting for your answer :o)
