Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 141448 - >=mail-client/evolution-2.6.2-r1 fails to load components when linked with -z now
Summary: >=mail-client/evolution-2.6.2-r1 fails to load components when linked with -z...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High major (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL: http://bugzilla.gnome.org/show_bug.cg...
Whiteboard:
Keywords:
: 189036 189051 234810 311945 (view as bug list)
Depends on: gnome2.30
Blocks:
  Show dependency tree
 
Reported: 2006-07-22 17:03 UTC by solar (RETIRED)
Modified: 2010-06-13 20:15 UTC (History)
7 users (show)

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


Attachments
Depdency weakening script (evo_fix,1.19 KB, text/plain)
2009-05-29 00:21 UTC, Mikaël Cluseau
Details

Note You need to log in before you can comment on or make changes to this bug.
Description solar (RETIRED) gentoo-dev 2006-07-22 17:03:47 UTC
After a recent gnome-2.14 update and evolution I get the following errors.
Nothing really displays outside of the Contacts window.
I have tested with and without any LDFLAGS set and the result seems 
to be the same every time.

(evolution-2.6:29052): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontactlisteditor.so.0: undefined symbol: eab_load_error_dialog'
(evolution-2.6:29052): e-utils-WARNING **: can't load plugin '/usr/lib/evolution/2.6/plugins/liborg-gnome-default-mailer.so: undefined symbol: em_utils_prompt_user'
(evolution-2.6:22435): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontactlisteditor.so.0: undefined symbol: eab_load_error_dialog'
(evolution-2.6:31074): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontactlisteditor.so.0: undefined symbol: addressbook_load_cancel'
(evolution-2.6:15815): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontactlisteditor.so.0: undefined symbol: eab_merging_book_commit_contact'
(evolution-2.6:19060): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontactlisteditor.so.0: undefined symbol: eab_merging_book_add_contact'
(evolution-2.6:29352): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontacteditor.so.0: undefined symbol: addressbook_load'
(evolution-2.6:17589): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontacteditor.so.0: undefined symbol: eab_prompt_save_dialog'
(evolution-2.6:27902): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontacteditor.so.0: undefined symbol: eab_load_error_dialog'
(evolution-2.6:10630): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontacteditor.so.0: undefined symbol: addressbook_load_cancel'
(evolution-2.6:24038): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontacteditor.so.0: undefined symbol: eab_merging_book_commit_contact'
(evolution-2.6:17147): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with `/usr/lib/evolution/2.6/libecontacteditor.so.0: undefined symbol: eab_merging_book_add_contact'

--------------------------------------------------------------------------------
To work around it I had todo the following.

rebind -w /usr/lib/evolution/2.6/components/libevolution-calendar.so addressbook_load

rebind -w /usr/lib/evolution/2.6/plugins/liborg-gnome-default-mailer.so em_utils_prompt_user

rebind -w /usr/lib/evolution/2.6/libecontactlisteditor.so.0 mail_tool_uri_to_folder
rebind -w /usr/lib/evolution/2.6/libecontactlisteditor.so.0 addressbook_load
rebind -w /usr/lib/evolution/2.6/libecontactlisteditor.so.0 eab_load_error_dialog
rebind -w /usr/lib/evolution/2.6/libecontactlisteditor.so.0 addressbook_load_cancel
rebind -w /usr/lib/evolution/2.6/libecontactlisteditor.so.0 eab_merging_book_commit_contact
rebind -w /usr/lib/evolution/2.6/libecontactlisteditor.so.0 eab_merging_book_add_contact
rebind -w /usr/lib/evolution/2.6/libecontacteditor.so.0 addressbook_load
rebind -w /usr/lib/evolution/2.6/libecontacteditor.so.0 eab_prompt_save_dialog
rebind -w /usr/lib/evolution/2.6/libecontacteditor.so.0 eab_load_error_dialog
rebind -w /usr/lib/evolution/2.6/libecontacteditor.so.0 addressbook_load_cancel
rebind -w /usr/lib/evolution/2.6/libecontacteditor.so.0 eab_merging_book_commit_contact
rebind -w /usr/lib/evolution/2.6/libecontacteditor.so.0 eab_merging_book_add_contact

The real symbol providers can be found using.

qlist -oe evolution | scanelf -f - -qs +addressbook_load
qlist -oe evolution | scanelf -f - -qs +em_utils_prompt_user
qlist -oe evolution | scanelf -f - -qs +mail_tool_uri_to_folder
qlist -oe evolution | scanelf -f - -qs +addressbook_load
qlist -oe evolution | scanelf -f - -qs +eab_load_error_dialog
qlist -oe evolution | scanelf -f - -qs +addressbook_load_cancel
qlist -oe evolution | scanelf -f - -qs +eab_merging_book_commit_contact
qlist -oe evolution | scanelf -f - -qs +eab_merging_book_add_contact
qlist -oe evolution | scanelf -f - -qs +addressbook_load
qlist -oe evolution | scanelf -f - -qs +eab_prompt_save_dialog
qlist -oe evolution | scanelf -f - -qs +eab_load_error_dialog
qlist -oe evolution | scanelf -f - -qs +addressbook_load_cancel
qlist -oe evolution | scanelf -f - -qs +eab_merging_book_commit_contact
qlist -oe evolution | scanelf -f - -qs +eab_merging_book_add_contact

A more proper fix may include building all the components with 
the -Wl,-z,lazy flag or assigning the references with the 
__attribute__ ((weak)) gcc directive.
It may be a problem with glib-2 also but I'm unsure of that as 
nothing else really fails outside of evolution.
Comment 1 solar (RETIRED) gentoo-dev 2006-07-22 17:04:16 UTC
Portage 2.1-r1 (hardened/x86/2.6, gcc-3.4.6, glibc-2.3.6-r4, 2.6.x i686)
=================================================================
System uname: 2.6.x i686 Intel(R) Pentium(R) 4 CPU 2.60GHz
Gentoo Base System version 1.6.15
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
app-admin/eselect-compiler: [Not Present]
dev-lang/python:     2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
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-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -pipe -fforce-addr"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc/dispatch-conf.conf /etc/make.conf /etc/portage /usr/share/X11/xkb /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -pipe -fforce-addr"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig buildpkg distclean distlocks genpkgindex metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://ftp.osuosl.org/pub/gentoo"
LDFLAGS="-Wl,-O1 -Bdirect"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages/hardened/x86"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage/"
PORTDIR_OVERLAY="/usr/portage/local"
SYNC="rsync://raptor.gentoo.org/gentoo-portage"
USE="alsa apache2 berkdb bindist crypt dlloader esd hardened jpeg mp3 mpeg ncurses nls ogg oss pam pic png readline ssl tcpd tiff userlocales vcd vorbis x86 xinerama xml xml2 xorg zlib elibc_glibc input_devices_mouse input_devices_keyboard kernel_linux userland_GNU"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 2 solar (RETIRED) gentoo-dev 2006-07-22 22:27:24 UTC
Bug seems reproducible on 2 or more machines.
Comment 3 Martin Schlemmer (RETIRED) gentoo-dev 2006-07-23 12:20:49 UTC
Linking the libs (those with missing symbols in /usr/lib64/evolution/2.6/) to those in /usr/lib64/evolution/2.6/components/ (namely libevolution-{addressbook,mail}.so in particular), might also fix this, but not sure if that is the accepted fix (ie, can you disable/enable those three components at runtime?  Basically why besides being the main 'components' are they in seperate dir - GModules or just ordinary libraries seperated for modularity?).  Do not seem like you can enable/disable them at configure time ...
Comment 4 Rob M. 2006-07-23 15:40:16 UTC
solar's rebind fix seems to work for me.

before the fix, I had these errors -

---

$ evolution-2.6
CalDAV Eplugin starting up ...

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


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


(evolution-2.6:21896): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Memos_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-calendar.so' failed with `/usr/lib/evolution/2.6/components/libevolution-calendar.so: undefined symbol: mail_tool_uri_to_folder'


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


evolution-mail-ERROR **: file mail-config.c: line 709 (mail_config_get_accounts): assertion failed: (config != NULL)
aborting...

----

after the fix, Evolution seems to run fine.
Comment 5 Martin Schlemmer (RETIRED) gentoo-dev 2006-07-24 03:36:00 UTC
((In reply to comment #0)
> A more proper fix may include building all the components with 
> the -Wl,-z,lazy flag or assigning the references with the 
> __attribute__ ((weak)) gcc directive.
> It may be a problem with glib-2 also but I'm unsure of that as 
> nothing else really fails outside of evolution.
> 

Problem if I go by how linking already is done, is that for example libevolution-mail.so links to libecontactlisteditor.so.0, but libecontactlisteditor.so.0 need some symbols in libevolution-mail.so.

So its really a inter-lib dependancy problem, and not glib-2 at all.  Only way besides maybe splitting out the functions that are interdependant into a third library, will be as you mentioned above the lazy linking - or at least if I haven't missed anything.
Comment 6 Steven Elling 2006-08-02 09:17:35 UTC
I seem to have the same issue after a recent upgrade to evolution-2.6.2-r1.  I am using evolution-exchange but I don't think that matters.

Here is the output from running evolution in a console:

~ $> evolution
CalDAV Eplugin starting up ...

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


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


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


(evolution-2.6:8680): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Exchange_Component:2.6': Child process did not give an error message, unknown failure occurred


(evolution-2.6:8680): evolution-shell-WARNING **: Cannot activate 'OAFIID:GNOME_Evolution_Memos_Component:2.6': g_module_open of `/usr/lib/evolution/2.6/components/libevolution-calendar.so' failed with `/usr/lib/evolution/2.6/components/libevolution-calendar.so: undefined symbol: mail_tool_uri_to_folder'


(evolution-2.6:8680): e-utils-WARNING **: can't load plugin '/usr/lib/evolution/2.6/plugins/liborg-gnome-default-mailer.so: undefined symbol: em_utils_prompt_user'

(evolution-2.6:8680): evolution-shell-WARNING **: Unknown component mail
-----
Comment 7 Steven Elling 2006-08-02 09:34:30 UTC
What package is rebind in.  I've tried to narrow my search on google but it is returning way too many irrelevant results.
Comment 8 solar (RETIRED) gentoo-dev 2006-08-02 11:12:12 UTC
dev-util/elfkickers-2.0a-r1 (/usr/bin/rebind)
Comment 9 dmorab 2006-08-05 09:26:04 UTC
(In reply to comment #0)
> After a recent gnome-2.14 update and evolution I get the following errors.
> Nothing really displays outside of the Contacts window.
> I have tested with and without any LDFLAGS set and the result seems 
> to be the same every time.
> 
> (evolution-2.6:29052): evolution-shell-WARNING **: Cannot activate
> 'OAFIID:GNOME_Evolution_Mail_Component:2.6': g_module_open of
> `/usr/lib/evolution/2.6/components/libevolution-mail.so' failed with
> `/usr/lib/evolution/2.6/libecontactlisteditor.so.0: undefined symbol:
> eab_load_error_dialog'
>


I haved similar error after e new emerging of gnome:

lib/libgobject-2.0.so /usr/lib/libxml2.so -lz /usr/lib/libgconf-2.so /usr/lib/libbonobo-2.so /usr/lib/libbonobo-activation.so /usr/lib/libORBit-2.so -lm /usr/lib/libgmodule-2.0.so -ldl /usr/lib/libgthread-2.0.so /usr/lib/libglib-2.0.so /usr/lib/libcamel-1.2.so /usr/lib/libedataserver-1.2.so -Wl,--rpath -Wl,/usr/lib/evolution/2.6
/usr/lib/evolution/2.6/libemiscwidgets.so.0: undefined reference to `g_type_register_static_simple'
collect2: ld returned 1 exit status
make[4]: *** [contact-print-test] Error 1
make[4]: Leaving directory `/var/tmp/portage/evolution-2.6.2-r1/work/evolution-2.6.2/addressbook/printing'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/var/tmp/portage/evolution-2.6.2-r1/work/evolution-2.6.2/addressbook'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/var/tmp/portage/evolution-2.6.2-r1/work/evolution-2.6.2/addressbook'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/evolution-2.6.2-r1/work/evolution-2.6.2'
make: *** [all] Error 2

!!! ERROR: mail-client/evolution-2.6.2-r1 failed.
Call stack:
ebuild.sh, line 1539: Called dyn_compile
ebuild.sh, line 939: Called src_compile
evolution-2.6.2-r1.ebuild, line 183: Called gnome2_src_compile
gnome2.eclass, line 64: Called die 

I fixit it by:

#emerge -C evolution
#emerge -uDN evolution
Comment 10 Steven Elling 2006-08-06 23:11:23 UTC
solar's work around did not work for me.
Comment 11 solar (RETIRED) gentoo-dev 2006-08-07 09:40:24 UTC
(In reply to comment #10)
> solar's work around did not work for me.

It should.. 
After weaking the symbols what remaining unresolved symbols do you see?
Comment 12 solar (RETIRED) gentoo-dev 2006-12-12 11:13:12 UTC
As far as I'm aware this is still a valid problem with evolution users. 
Comment 13 Steven Elling 2006-12-20 22:06:45 UTC
This is a problem with Evolution 2.8.2.1 as well.  Plus, I think the undefined symbols problem is more extensive than what the errors are indicating.

On my system, when I run the following:

for i in $(qlist -oe evolution | grep '\.so'); do ldd -d $i 2>&1 | grep 'undefined symbol:'; done | sort -u | wc -l


It shows there are 946 undefined symbols.  Quite a lot of undefined symbols and its no wonder Evolution crashes all the time when I manage to get the mentioned symbols taken care of.

If I'm understanding readelf correctly, when I run the following on my system:

for i in $(qlist -oe evolution | grep '\.so'); do readelf -Ds $i; done | grep 'GLOBAL.*UND' | wc -l


It shows there are 10653 undefined symbols.

Likewise, the following command shows 10653 undefined symbols:

for i in $(qlist -oe evolution | grep '\.so'); do nm -Du $i; done | grep '^[[:blank:]]*U' | wc -l
Comment 14 solar (RETIRED) gentoo-dev 2007-05-06 06:19:32 UTC
Still have to do the same thing with evo-2.8 (I know of no other way to get evo working)


rebind -w /usr/lib/evolution/2.8/components/libevolution-calendar.so addressbook_load
rebind -w /usr/lib/evolution/2.8/components/libevolution-calendar.so mail_tool_uri_to_folder
rebind -w /usr/lib/evolution/2.8/plugins/liborg-gnome-default-mailer.so em_utils_prompt_user
rebind -w /usr/lib/evolution/2.8/libecontactlisteditor.so.0 mail_tool_uri_to_folder
rebind -w /usr/lib/evolution/2.8/libecontactlisteditor.so.0 addressbook_load
rebind -w /usr/lib/evolution/2.8/libecontactlisteditor.so.0 eab_load_error_dialog
rebind -w /usr/lib/evolution/2.8/libecontactlisteditor.so.0 addressbook_load_cancel
rebind -w /usr/lib/evolution/2.8/libecontactlisteditor.so.0 eab_merging_book_commit_contact
rebind -w /usr/lib/evolution/2.8/libecontactlisteditor.so.0 eab_merging_book_add_contact
rebind -w /usr/lib/evolution/2.8/libecontacteditor.so.0 addressbook_load
rebind -w /usr/lib/evolution/2.8/libecontacteditor.so.0 eab_prompt_save_dialog
rebind -w /usr/lib/evolution/2.8/libecontacteditor.so.0 eab_load_error_dialog
rebind -w /usr/lib/evolution/2.8/libecontacteditor.so.0 addressbook_load_cancel
rebind -w /usr/lib/evolution/2.8/libecontacteditor.so.0 eab_merging_book_commit_contact
rebind -w /usr/lib/evolution/2.8/libecontacteditor.so.0 eab_merging_book_add_contact
Comment 15 solar (RETIRED) gentoo-dev 2007-08-15 21:22:25 UTC
*** Bug 189036 has been marked as a duplicate of this bug. ***
Comment 16 Gunther Gruber 2007-08-15 22:53:48 UTC
I fixed it with "revdep-rebuild" 
Comment 17 Gilles Dartiguelongue (RETIRED) gentoo-dev 2007-09-08 16:05:25 UTC
can't reproduce it on my work's box (brand new install on amd64).

I do not use multilib nor hardneded though. Could you all precise if you are using hardened or not, because besides solar, nobody attached their emerge --info.
Comment 18 solar (RETIRED) gentoo-dev 2007-10-05 14:26:19 UTC
Undefined symbols continue into v-2.10
Comment 19 Gilles Dartiguelongue (RETIRED) gentoo-dev 2007-10-05 14:49:35 UTC
reading some old comments I ran this:

for i in $(qlist -oe evolution | grep '\.so'); do readelf -Ds $i; done | grep 'GLOBAL.*UND' | wc -l
11873

but I still have no problems with evolution whatsoever. I also spotted in the only report giving emerge --info that there is LDFLAGS="-Bdirect" (shouldn't it have a -Wl ?). Couldn't it be a cause of those problems mentionned at the beginning of this bug report of am I completely missing the point ?
Comment 20 solar (RETIRED) gentoo-dev 2007-10-05 15:05:57 UTC
Comment #5 is where the root of the problem is. You probably wont see the problem cuz you are running with LAZY bindings. If you were to run evo like
"LD_BIND_NOW=1 evolution" then you might trigger this.
And yes grepping for all undefined symbols is useless. There will always be undefined symbols in libs. 
Comment 21 Dylan Hall 2007-10-13 10:26:23 UTC
I think I'm seeing the same issue. I'm using evolution 2.10.3 on a hardened gentoo. When I access the configuration dialog I get the following:

(evolution:17830): e-utils-WARNING **: Cannot resolve symbol 'org_gnome_new_mail_config' in plugin '/usr/lib/evolution/2.10/plugins/liborg-gnome-new-mail-notify.so' (not exported?)

The upshot of this seems to be that the OK button is permanently grayed out meaning I can't make changes to my current config.

I had the issues described in this bug on 2.6 and 2.8, but at some point they righted themselves. I'm assuming this is a re-occurrence?


Portage 2.1.3.9 (hardened/x86/2.6, gcc-3.4.6, glibc-2.5-r4, 2.6.20-hardened-r6-dylan2 i686)
=================================================================
System uname: 2.6.20-hardened-r6-dylan2 i686 Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz
Timestamp of tree: Wed, 10 Oct 2007 10:20:01 +0000
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p17
dev-lang/python:     2.4.4-r5
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17-r1
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.22-r2
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://ftp.citylink.co.nz/gentoo http://mirror.pacific.net.au/linux/Gentoo http://distfiles.gentoo.org"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.au.gentoo.org/gentoo-portage"
USE="X a52 aac aalib acl acpi alsa apache2 async berkdb bitmap-fonts bzip2 cairo cdda cddb cdr cli cpudetection cracklib crypt cups dbus dcraw doc dts dvd dvdr dvdread eds encode esd evo exif fam ffmpeg firefox flatfile gd gdbm gif glitz gnome gpm graphviz gstreamer gtk gtk2 hal hardened iconv imagemagick imap inifile iproute2 ithreads jpeg lame ldap mad matroska midi mikmod mmx mmxext mp3 mpeg mudflap mysql ncurses netpbm nfs nls nptl nptlonly nsplugin ogg opengl openmp pam pango pcntl pcre pdf perl php pic png posix ppds python quicktime readline reflection rtc rtsp samba sdl session sharedext simplexml snmp sockets spell spl sse sse2 ssl stream svg tcpd threads tiff truetype truetype-fonts type1-fonts unicode unzip urandom vhosts vorbis win32codecs wma x264 x86 xml xmlrpc xorg xv xvid zip zlib" ALSA_CARDS="hda-intel ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="mouse keyboard" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="nv"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 22 Gilles Dartiguelongue (RETIRED) gentoo-dev 2007-10-13 18:46:44 UTC
(In reply to comment #20)
> Comment #5 is where the root of the problem is. You probably wont see the
> problem cuz you are running with LAZY bindings. If you were to run evo like
> "LD_BIND_NOW=1 evolution" then you might trigger this.

trying this on ~amd64 gave me no problem but I didn't check if eds was really down. I justs tried it on ~x86 and made sure eds was shut down before restarting (evolution --force-shutdown) and I can se that my evolution is all broken now :)
Comment 23 Gunther Gruber 2007-10-13 19:05:33 UTC
(In reply to comment #16)
> I fixed it with "revdep-rebuild" 
> 
not that is incorrect informations, i did that after switching to a compiler without hardened flags
Comment 24 solar (RETIRED) gentoo-dev 2007-10-13 20:32:56 UTC
Vs using the old rebind hack this does the trick for me.

hardened ~ # cat /etc/portage/env/mail-client/evolution 
if [[ ${LDFLAGS/-Wl,-z,lazy/} == $LDFLAGS ]]; then
        echo " * Exporting: lazy linker flag in $EBUILD_PHASE"
        LDFLAGS="${LDFLAGS} -Wl,-z,lazy"
fi
Comment 25 Gilles Dartiguelongue (RETIRED) gentoo-dev 2007-10-13 20:58:06 UTC
*** Bug 189051 has been marked as a duplicate of this bug. ***
Comment 26 C. 2007-11-19 11:44:02 UTC
Portage 2.1.3.19 (hardened/amd64/multilib, gcc-3.4.6, glibc-2.6.1-r0, 2.6.22-hardened-r8 x86_64)
=================================================================
System uname: 2.6.22-hardened-r8 x86_64 Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz
Timestamp of tree: Sun, 18 Nov 2007 01:47:01 +0000
ccache version 2.4 [disabled]
app-shells/bash:     3.2_p17
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python:     2.4.4-r6, 2.5.1-r3
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.22-r2
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=nocona -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig buildpkg distclean distlocks genpkgindex metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://ftp.snt.utwente.nl/pub/os/linux/gentoo http://gentoo.tiscali.nl/ "
LINGUAS="en sv"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X acpi alsa amd64 berkdb cairo cdr cracklib crypt dbus dvd dvdr gif gkt glitz gnome gtkhtml hal hardened idn ipv6 jpeg justify keyring mad midi networkmanager nls nptl nptlonly ogg opengl pam pic png readline socks5 spell sse ssl ssse svg tcpd unicode urandom vorbis xorg xv zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en sv" USERLAND="GNU" VIDEO_CARDS="vesa"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

#######
I was running the amd64 non-multilib profile and did NOT have this problem. I switched to multilib and this pops up. in 2.12.x  I've informed a few evolution devs and it should be looked into upstream.  Anyone filed a bug at the gnome issue tracker?
Comment 27 solar (RETIRED) gentoo-dev 2007-11-20 11:08:41 UTC
Re: upstream maintainers.. this is the proper thing to do.. While lazy bindings might work.. It's far from the proper fix from an upstream provider. 
Even in an ideal world the deps would be fixed.. But till then...
"* assign the references with the __attribute__ ((weak)) gcc directive"
thanks for any time/attention..
Comment 28 Mart Raudsepp gentoo-dev 2008-01-06 14:01:19 UTC
Evolution was just moved to gnome herd, reassigning appropriately
Comment 29 Pacho Ramos gentoo-dev 2008-04-22 19:19:41 UTC
Upstream asked for tests with 2.22:
http://bugzilla.gnome.org/show_bug.cgi?id=471895#c1
Comment 30 Rémi Cardona (RETIRED) gentoo-dev 2008-05-27 18:14:25 UTC
Please get back to us or to upstream with the requested test results.

Thanks
Comment 31 Gilles Dartiguelongue (RETIRED) gentoo-dev 2008-05-27 22:56:37 UTC
the problem still occurs, closing the bug won't make it go away since the issue wasn't addressed upstream.
Comment 32 Gilles Dartiguelongue (RETIRED) gentoo-dev 2008-08-15 12:32:30 UTC
*** Bug 234810 has been marked as a duplicate of this bug. ***
Comment 33 Steven Elling 2008-11-27 19:07:44 UTC
I have the /etc/portage/env/mail-client/evolution file on my x86 system from comment #24 so I ran 'LD_BIND_NOW=1 evolution' instead of taking the time to rebuild evo.

I don't get the "undefined symbol" errors anymore.  I only get the following but evo seems to function otherwise:

# LD_BIND_NOW=1 evolution
error : unterminated entity reference               R

** (evolution:11576): WARNING **: LDAP authentication failed (0xffffffff)
** (evolution:11576): DEBUG: mailto URL command: evolution %s
** (evolution:11576): DEBUG: mailto URL program: evolution


Well, by function I mean the GUI interface came up but I've been waiting for over 45 minutes for it to retrieve messages, download new messages and fetch summary information from the MS Exchange server I'm connecting to.

If needed/wanted, I can remove /etc/portage/env/mail-client/evolution and recompile.

Here are the evo packages I have installed at this point in time for reference:

# qlist -ICv evolution evolution-data-server evolution-exchange
gnome-extra/evolution-data-server-2.22.3
gnome-extra/evolution-exchange-2.22.3-r1
mail-client/evolution-2.22.3.1
Comment 34 solar (RETIRED) gentoo-dev 2009-04-20 19:50:42 UTC
Bug remains with mail-client/evolution-2.24.5
Comment 35 Xake 2009-04-20 20:00:17 UTC
...and with 2.26.1.1...
This problem seems a bit ignored upstream...
Comment 36 Gilles Dartiguelongue (RETIRED) gentoo-dev 2009-04-20 20:51:49 UTC
(In reply to comment #35)
> ...and with 2.26.1.1...
> This problem seems a bit ignored upstream...
> 

oh yeah, like if it was easy to redesign how everything is pulled together...
Feel free to try and tackle this issue, upstream is very aware of their lib interdependencies problem but as it is right now, it is hard to fix and will probably take a big rewrite to get finally ironed out (say gnome 3).
Comment 37 Mikaël Cluseau 2009-05-29 00:21:04 UTC
Created attachment 192773 [details]
Depdency weakening script

Hello guys,

I build a dependency weakening script, see attachment.

May be we could run this script in the ebuild ?
Comment 38 Matt Enright 2010-03-12 09:32:09 UTC
Upstream seems to think the huge refactoring and bonobo removal that landed this cycle has fixed the linking issues, and indeed I can't reproduce it with the 2.29.92 ebuild in gnome-overlay.

Is anyone still seeing this with the bonobo-less evolution?
Comment 39 Xake 2010-03-12 09:38:52 UTC
(In reply to comment #38)
> Upstream seems to think the huge refactoring and bonobo removal that landed
> this cycle has fixed the linking issues, and indeed I can't reproduce it with
> the 2.29.92 ebuild in gnome-overlay.
> 
> Is anyone still seeing this with the bonobo-less evolution?
> 

This seems to be true for me as well.
Comment 40 Pacho Ramos gentoo-dev 2010-03-29 16:23:29 UTC
*** Bug 311945 has been marked as a duplicate of this bug. ***
Comment 41 Steven Elling 2010-05-24 03:16:39 UTC
My last comment on this bug is about the time I gave up on trying to use evo so I don't know whether the problem still exists.

People where I work tend to rely on e-mail a lot and my evo problems were affecting my ability to do my job.  I was able to persuade IT to grant me IMAP and authenticated SMTP access to the Exchange server.  I've been using KMail since.

I'm removing myself from the CC list.
Comment 42 Pacho Ramos gentoo-dev 2010-06-13 20:15:06 UTC
2.30 in the tree