Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 85013 - Evolution-2.2.0 has issues with libraries
Summary: Evolution-2.2.0 has issues with libraries
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All All
: High normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
: 92682 (view as bug list)
Depends on:
Blocks: 95548
  Show dependency tree
 
Reported: 2005-03-12 12:11 UTC by Saleem Abdulrasool (RETIRED)
Modified: 2005-07-21 19:30 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
config.log for evolution (config.log,179.52 KB, text/plain)
2005-07-18 12:57 UTC, Chris Gianelloni (RETIRED)
Details
scanelf log (scanelf.log,5.98 KB, text/plain)
2005-07-18 15:07 UTC, Chris Gianelloni (RETIRED)
Details
evolution-2.2.1.1-linking.patch (evolution-2.2.1.1-linking.patch,564 bytes, patch)
2005-07-18 20:14 UTC, John N. Laliberte (RETIRED)
Details | Diff
evolution-2.2.1.1-linking-2.patch (evolution-2.2.1.1-linking-2.patch,565 bytes, patch)
2005-07-19 08:15 UTC, John N. Laliberte (RETIRED)
Details | Diff
evolution log (evo.log,886 bytes, text/plain)
2005-07-19 08:35 UTC, Chris Gianelloni (RETIRED)
Details
evolution log (evo.log,81.43 KB, text/plain)
2005-07-19 08:42 UTC, Chris Gianelloni (RETIRED)
Details
evolution-2.2.3-linking-fix.patch (evolution-2.2.3-linking-fix.patch,927 bytes, patch)
2005-07-19 15:31 UTC, John N. Laliberte (RETIRED)
Details | Diff
evolution-2.2.3-ebuild.patch (evolution-2.2.3-ebuild.patch,663 bytes, patch)
2005-07-19 15:32 UTC, John N. Laliberte (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Saleem Abdulrasool (RETIRED) gentoo-dev 2005-03-12 12:11:31 UTC
Evolution 2.2.0 is unable to properly access libraries.  The following errors are reported upon running from the command line:

(evolution:31042): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.2': g_module_open of `/usr/lib/evolution/2.2/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.2/libecontactlisteditor.so.0: undefined symbol: addressbook_load'


(evolution:31042): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Tasks_Component:2.2': g_module_open of `/usr/lib/evolution/2.2/components/libevolution-calendar.so' failed with `/usr/lib/evolution/2.2/components/libevolution-calendar.so: undefined symbol: em_popup_target_new_attachments'


(evolution:31042): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Calendar_Component:2.2': g_module_open of `/usr/lib/evolution/2.2/components/libevolution-calendar.so' failed with `/usr/lib/evolution/2.2/components/libevolution-calendar.so: undefined symbol: em_popup_target_new_attachments'


(evolution:31042): e-utils-WARNING **: can't load plugin '/usr/lib/evolution/2.2/plugins/liborg-gnome-evolution-startup-wizard.so: undefined symbol: calendar_config_get_icaltimezone'
EMenuHook class init 0x80d1a98 'EMenuHook'
es menu class init
 plugin adding factory 0x80d1e28
Comment 1 Ian Kumlien 2005-03-28 15:51:24 UTC
2.2.1.1 Does not have this flaw, and seems to work just great.
(ie, this should perhaps not block gnome 2.10)
Comment 2 Rob 2005-04-27 16:47:21 UTC
I second the notion.  Since 2.2.1.1 is in Portage, I propose that this bug is either marked FIXED or removed, because 2.2.0 is no longer the version used.
Comment 3 Joe McCann (RETIRED) gentoo-dev 2005-04-30 20:05:26 UTC
ok no further comments from reporter, can't reproduce, and somebody claims it is no longer a problem(though doesn't mention if it was a problem of theirs in the first place). reopen if still an issue
Comment 4 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-18 11:04:58 UTC
This is still definitely a problem for me and is reproducable on more than one
machine.

Since the upgrade to Gnome 2.10/Evolution 2.2, I've had nothing but problems on
both of my machines running Gnome.  Evolution is completely busted.  By sheer
luck, I managed to get Evolution working for Contacts and Mail on one machine. 
On my other, I can only get contacts.  Are you guys aware of this?  According to
the mailing lists I've been looking at, upstream considers it a "known issue
with Gentoo's build of Evolution" and don't seem to offer any help.

Here's the errors I get on the box where mail works:

$ evolution
es menu class init
evolution-shell-Message: Killing old version of evolution-data-server...

(evolution:26154): evolution-shell-WARNING **: Cannot activate
'OAFIID:GNOME_Evolution_Calendar_Component:2.2': g_module_open of
`/usr/lib/evolution/2.2/components/libevolution-calendar.so' failed with
`/usr/lib/evolution/2.2/components/libevolution-calendar.so: undefined
symbol: em_popup_target_new_attachments'


(evolution:26154): evolution-shell-WARNING **: Cannot activate
'OAFIID:GNOME_Evolution_Tasks_Component:2.2': g_module_open of
`/usr/lib/evolution/2.2/components/libevolution-calendar.so' failed with
`/usr/lib/evolution/2.2/components/libevolution-calendar.so: undefined
symbol: em_popup_target_new_attachments'


(evolution:26154): e-utils-WARNING **: can't load plugin
'/usr/lib/evolution/2.2/plugins/liborg-gnome-evolution-startup-wizard.so:
undefined symbol: calendar_config_get_icaltimezone'


Yes, I've tried emerging Evolution again.  I've also tried completely removing
Evolution and its dependencies, any gconf entries for it, and performing an
"emerge -e evolution" in an attempt to clean it up.  I haven't gotten anywhere.

As an aside, both of these machines have been running Evolution successfully
since pre-1.2 versions.  Is there a possibility of it being some sort of upgrade
issue?  As far as I know, I've done everything short of wiping the machines and
reinstalling to resolve this.  If you need any testing to be done, let me know
and I will gladly help.
Comment 5 John N. Laliberte (RETIRED) gentoo-dev 2005-07-18 11:16:14 UTC
wolf: what version of evolution stuff are you running? 
I do not have those issues on either of my boxes with evolution.

Currently I'm running:
[I--] [  ] gnome-extra/evolution-data-server-1.2.1-r1 (0)
[I--] [  ] gnome-extra/evolution-webcal-2.2.0 (0)
[I--] [  ] mail-client/evolution-2.2.1.1 (2.0)
[I--] [  ] mail-client/ximian-connector-2.2.3 (2.0)

Can you also attach a full build log along with config.log ?

also, if you ldd on those .so's, are all the links good?

Could you attach your emerge as well?

Thanks!
Comment 6 John N. Laliberte (RETIRED) gentoo-dev 2005-07-18 11:17:22 UTC
emerge "info" I meant to say :)
Comment 7 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-18 12:56:26 UTC
As far as the versions are concerned, everything from 2.2.0 on evolution, even
when it was package.mask'd (on one machine).

Currently: (I'm upgrading it right now)

[ebuild   R   ] gnome-extra/evolution-data-server-1.2.3  -debug -doc +ipv6
-kerberos +ldap -mozilla -nntp +ssl 0 kB
[ebuild   R   ] gnome-extra/evolution-webcal-2.2.1  -debug -doc 0 kB
[ebuild     U ] mail-client/evolution-2.2.3-r1 [2.2.3] +crypt -dbus -debug -doc
+gstreamer +ipv6 -kerberos -krb4 +ldap -mono -mozilla -nntp -pda +spell +ssl
-static 0 kB

All links are good via ldd, and the files exist in their proper locations.

When compiling evolution, I get *tons* of libtool warnings, such as these:
libtool: link: warning:
`/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/../../..//libgconf-2.la' seems to be moved
libtool: link: warning:
`/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/../../..//libbonobo-activation.la' seems
to be moved
libtool: link: warning:
`/usr/lib/gcc/i686-pc-linux-gnu/3.4.4/../../..//libORBit-2.la' seems to be moved


$ emerge info
Portage 2.0.51.22-r1 (default-linux/x86/2005.1, gcc-3.4.4, glibc-2.3.5-r0,
2.6.12-gentoo-r6 i686)
=================================================================
System uname: 2.6.12-gentoo-r6 i686 Mobile Intel(R) Pentium(R) 4 - M CPU
2.40GHzGentoo Base System version 1.6.13
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.4 [enabled]
dev-lang/python:     2.3.5, 2.4.1-r1
sys-apps/sandbox:    1.2.11
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.18-r1
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium4 -pipe -fomit-frame-pointer -ftracer
-fmerge-all-constants -fforce-addr -foptimize-register-move -frename-registers
-mno-push-args -mno-align-stringops -maccumulate-outgoing-args -mfpmath=sse
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=pentium4 -pipe -fomit-frame-pointer -ftracer
-fmerge-all-constants -fforce-addr -foptimize-register-move -frename-registers
-mno-push-args -mno-align-stringops -maccumulate-outgoing-args -mfpmath=sse
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache cvs digest distcc notitles sandbox sfperms"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo
ftp://gentoo.mirrors.tds.net/gentoo ftp://mir1.ovh.net/gentoo-distfiles/"
LDFLAGS="-Wl,-O1 -Wl,-z,now"
MAKEOPTS="-j8"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.us.gentoo.org/gentoo-portage"
USE="x86 acpi alsa avi cdr crypt cups dvd eds encode esd ethereal evo fam gif
gnome gphoto2 gstreamer gtk gtk2 hal ipv6 java jpeg ldap mmx mp3 mpeg ncurses
nocd nptl ogg oggvorbis opengl oss pam pcmcia perl pic png pnp ppds quicktime
readline samba snmp spell sse ssl tcpd tiff truetype trusted usb videos vorbis
win32codecs xml xml2 xmms xprint xv xvid zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LINGUAS

Comment 8 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-18 12:57:17 UTC
Created attachment 63726 [details]
config.log for evolution

Here is the config.log from the currently-building 2.2.3-r1 ebuild.
Comment 9 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-18 12:58:20 UTC
Now, I have had this problem for some time.  Not only on the machine below, but
also on my "non-experimental" box, which uses the 2005.0 profile, and uses
CFLAGS="-O2 -march=pentium4 -pipe" so I doubt it is CFLAGS-related.
Comment 10 John N. Laliberte (RETIRED) gentoo-dev 2005-07-18 14:53:26 UTC
first, run scanelf -b $(epm -q -l evolution) and attach the results.

can you get rid of -z,now in your LDFLAGS and recompile evolution?

this is very similar to http://bugs.gentoo.org/show_bug.cgi?id=92682  i'll mark
it a dupe based on the results of this test.

after re-emerging, please run scanelf -b $(epm -q -l evolution) and attach the
results. ( hopefully they will be a bit different )

Thanks!
Comment 11 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-18 14:54:16 UTC
By the way, I just commented LDFLAGS and set CFLAGS="-O2 -march=pentium4 -pipe"
and re-ran an evolution merge.  Results are the same.
Comment 12 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-18 15:07:02 UTC
Created attachment 63737 [details]
scanelf log

Here is the log
Comment 13 John N. Laliberte (RETIRED) gentoo-dev 2005-07-18 20:13:05 UTC
okay, I think this patch will work ( it works for me with gcc 3.4.4 now )   :) 

My errors were a bit different than yours, but I was also trying this with
2.2.1.1 and not the latest unstable evo. ( and gcc 3.4.4 )  If this fix does not
work exactly with latest unstable, it should be trivial for me to make a new
patch that *does* fix the problem for the unstable version.

(evolution:3081): evolution-shell-WARNING **: Cannot activate
'OAFIID:GNOME_Evolution_Mail_Component:2.2': g_module_open of
`/usr/lib/evolution/2.2/components/libevolution-mail.so' failed with
`/usr/lib/evolution/2.2/libecontactlisteditor.so.0: undefined symbol:
eab_load_error_dialog'


(evolution:3081): evolution-smime-WARNING **: initializing security library
without cert databases.

(evolution:3081): evolution-shell-WARNING **: Cannot activate
'OAFIID:GNOME_Evolution_Tasks_Component:2.2': g_module_open of
`/usr/lib/evolution/2.2/components/libevolution-calendar.so' failed with
`/usr/lib/evolution/2.2/components/libevolution-calendar.so: undefined symbol:
em_popup_new'


(evolution:3081): evolution-shell-WARNING **: Cannot activate
'OAFIID:GNOME_Evolution_Calendar_Component:2.2': g_module_open of
`/usr/lib/evolution/2.2/components/libevolution-calendar.so' failed with
`/usr/lib/evolution/2.2/components/libevolution-calendar.so: undefined symbol:
em_popup_new'


(evolution:3081): e-utils-WARNING **: can't load plugin
'/usr/lib/evolution/2.2/plugins/liborg-gnome-evolution-startup-wizard.so:
undefined symbol: em_account_editor_new'

(evolution:3081): evolution-shell-WARNING **: Unknown component mail

( after much fumbling and learning more about libraries than I wanted to )

Basically, I figured out that the library that defines eab_load_error_dialog is
located in libevolution-addressbook.so by doing:

nm --dynamic -o /usr/lib/evolution/2.2/components/* 2> /dev/null | grep
"eab_load_error_dialog"
/usr/lib/evolution/2.2/components/libevolution-addressbook.so:00022a8b T
eab_load_error_dialog

( The T means its defined there, U would mean its not defined there, but used )

Next, I did export LD_DEBUG="files" and evolution 2> evolog.txt.
This generated a lot of output that let me know which libraries were being
loaded, and in which order they were being loaded.

I found out that libevolution-mail.so was failing to load because a library had
not been previously loaded that defined eab_load_error_dialog.

Then I just confirmed with ldd that libevolution-mail.so did not link to
libevolution-addressbook.so where eab_load_error_dialog was defined ( and it had
not been loaded previously by another .so ).  You can also look to see that the
symbol is undefined in libevolution-mail by using objdump -T.

So, by looking at the error, one can see that libevolution-addressbook.so must
be loaded before /usr/lib/evolution/2.2/libecontactlisteditor.so.0 or
eab_load_error_dialog will be undefined.
( in retrospect, only the first error mattered )

Then I just found where the .la was made in the source, and made the patch.

I attached the patch.  Try this with evo 2.2.1.1 and make sure you run automake
/ autoconf after applying.

After doing this, evolution runs perfectly. 
( just as it had when compiled using 3.3.5 )

Thanks, and report back!
Comment 14 John N. Laliberte (RETIRED) gentoo-dev 2005-07-18 20:14:02 UTC
Created attachment 63747 [details, diff]
evolution-2.2.1.1-linking.patch
Comment 15 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-19 06:42:54 UTC
The patch worked for me on 2.2.3-r1
Comment 16 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-19 07:39:51 UTC
....and on the other machine where mail already worked, I get this:

$ evolution
es menu class init
evolution-shell-Message: Killing old version of evolution-data-server...

(evolution:25555): evolution-shell-WARNING **: Cannot activate
'OAFIID:GNOME_Evolution_Calendar_Component:2.2': g_module_open of
`/usr/lib/evolution/2.2/components/libevolution-calendar.so' failed with
`/usr/lib/evolution/2.2/components/libevolution-calendar.so: undefined symbol:
em_popup_target_new_attachments'


(evolution:25555): evolution-shell-WARNING **: Cannot activate
'OAFIID:GNOME_Evolution_Tasks_Component:2.2': g_module_open of
`/usr/lib/evolution/2.2/components/libevolution-calendar.so' failed with
`/usr/lib/evolution/2.2/components/libevolution-calendar.so: undefined symbol:
em_popup_target_new_attachments'


(evolution:25555): e-utils-WARNING **: can't load plugin
'/usr/lib/evolution/2.2/plugins/liborg-gnome-evolution-startup-wizard.so:
undefined symbol: calendar_config_get_icaltimezone'
Comment 17 John N. Laliberte (RETIRED) gentoo-dev 2005-07-19 08:15:08 UTC
ok, this will be another small linking patch.

Please attach output of (before applying patch):
LD_DEBUG="files" ( set at command line )
evolution 2> evo.log ( run evolution and log output to file)
(So I can determine the correct place to put this in the order.)

nm --dynamic -o /usr/lib/evolution/2.2/components/* 2> /dev/null | grep
"em_popup_target_new_attachments"
/usr/lib/evolution/2.2/components/libevolution-calendar.so:         U
em_popup_target_new_attachments
/usr/lib/evolution/2.2/components/libevolution-mail.so:00066f09 T
em_popup_target_new_attachments

linked calendar to mail as well, I can't test this patch until later today, but
I think it should work.
Comment 18 John N. Laliberte (RETIRED) gentoo-dev 2005-07-19 08:15:49 UTC
Created attachment 63786 [details, diff]
evolution-2.2.1.1-linking-2.patch
Comment 19 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-19 08:35:43 UTC
Created attachment 63787 [details]
evolution log
Comment 20 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-19 08:42:32 UTC
Created attachment 63788 [details]
evolution log

Sorry about that...
Comment 21 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-19 11:26:41 UTC
make[6]: *** No rule to make target `../../mail/libevolution-mail.la', needed by
`libevolution-calendar.la'.  Stop.
make[6]: Leaving directory
`/var/tmp/portage/evolution-2.2.3-r1/work/evolution-2.2.3/calendar/gui'

It doesn't like the second patch.
Comment 22 John N. Laliberte (RETIRED) gentoo-dev 2005-07-19 15:30:54 UTC
okay, I can't reproduce your problem, but I've fixed the previous patch ( needed
to change the build order in the main Makefile ).

Report back with results.

Thanks!
Comment 23 John N. Laliberte (RETIRED) gentoo-dev 2005-07-19 15:31:46 UTC
Created attachment 63820 [details, diff]
evolution-2.2.3-linking-fix.patch
Comment 24 John N. Laliberte (RETIRED) gentoo-dev 2005-07-19 15:32:50 UTC
Created attachment 63821 [details, diff]
evolution-2.2.3-ebuild.patch

heres the ebuild diff.
Comment 25 Chris Gianelloni (RETIRED) gentoo-dev 2005-07-19 16:52:35 UTC
That did it... COMMIT! COMMIT!

:P
Comment 26 John N. Laliberte (RETIRED) gentoo-dev 2005-07-21 19:23:15 UTC
*** Bug 92682 has been marked as a duplicate of this bug. ***
Comment 27 John N. Laliberte (RETIRED) gentoo-dev 2005-07-21 19:30:25 UTC
in CVS, and patch sent/reported upstream 
( http://bugs.gnome.org/show_bug.cgi?id=311210 )