[Dovecot] compiling dovecot on aix gcc 3.3.2

funkypunky drunky funkypunkydrunky at gmail.com
Thu Apr 5 09:00:41 EEST 2007


Hi ralf;
In spite your incrediable help i cannot compile the plugin support of
dovecot. It means i have to use dovecot without imap quota extension. I feel
a little dummy but i cannot compile dovecot plugins. But if there is someone
who compile the dovecot plugins on aix with gcc, i am look forward to
receiving some help. Thanx for everything until now.
C u later.


2007/3/29, Ralf Becker <beckerr at fh-trier.de>:
>
> Hello funkypunky drunky,
>
> this is an example how the script rewrite the command line when the
> dovecot-imap binary is being linked:
>
> 1) Makefile calls libtool with:
>
>   ../../libtool --tag=CC --mode=link
>        /usr/local/src/mail/src/bin/dovecot-cc
>        -qlanglvl=ansi -g -export-dynamic -bexpall -brtl
>        -L/usr/local/lib -L/usr/local/lib -o imap
>        cmd-append.o cmd-capability.o  cmd-check.o
>        cmd-close.o cmd-copy.o  cmd-create.o cmd-delete.o
>        cmd-examine.o cmd-expunge.o  cmd-fetch.o cmd-idle.o
>        cmd-list.o  cmd-logout.o cmd-lsub.o  cmd-namespace.o
>        cmd-noop.o  cmd-rename.o cmd-search.o cmd-select.o  cmd-sort.o
>        cmd-status.o cmd-store.o  cmd-subscribe.o cmd-thread.o cmd-uid.o
>        cmd-unselect.o cmd-unsubscribe.o client.o commands.o
>        commands-util.o imap-expunge.o  imap-fetch.o imap-fetch-body.o
>        imap-messageset.o imap-search.o  imap-sort.o imap-sync.o
>        imap-thread.o  mail-storage-callbacks.o main.o  namespace.o
>        ../lib-storage/register/libstorage-register.a
>        ../../src/lib-storage/index/maildir/libstorage_maildir.a
>        ../../src/lib-storage/index/mbox/libstorage_mbox.a
>        ../../src/lib-storage/index/dbox/libstorage_dbox.a
>        ../../src/lib-storage/index/libstorage_index.a
>        ../../src/lib-index/libindex.a  ../lib-storage/libstorage.a
>        ../lib-storage/subscription-file/libstorage_subscription_file.a
>        ../lib-imap/libimap.a  ../lib-mail/libmail.a
>        ../lib-dict/libdict.a  ../lib-charset/libcharset.a
>        ../lib/liblib.a  ../lib/mountpoint.o  -liconv
>
> 2) libtool calls dovecot-cc with:
>
>   /usr/local/src/mail/src/bin/dovecot-cc
>        -qlanglvl=ansi -g -bexpall -brtl -o imap
>        cmd-append.o cmd-capability.o cmd-check.o
>        cmd-close.o cmd-copy.o cmd-create.o cmd-delete.o
>        cmd-examine.o cmd-expunge.o cmd-fetch.o cmd-idle.o
>        cmd-list.o cmd-logout.o cmd-lsub.o cmd-namespace.o
>        cmd-noop.o cmd-rename.o cmd-search.o cmd-select.o cmd-sort.o
>        cmd-status.o cmd-store.o cmd-subscribe.o cmd-thread.o cmd-uid.o
>        cmd-unselect.o cmd-unsubscribe.o client.o commands.o
>        commands-util.o imap-expunge.o imap-fetch.o imap-fetch-body.o
>        imap-messageset.o imap-search.o imap-sort.o imap-sync.o
>        imap-thread.o mail-storage-callbacks.o main.o namespace.o
>        ../lib/mountpoint.o  -L/usr/local/lib
>        ../lib-storage/register/libstorage-register.a
>        ../../src/lib-storage/index/maildir/libstorage_maildir.a
>        ../../src/lib-storage/index/mbox/libstorage_mbox.a
>        ../../src/lib-storage/index/dbox/libstorage_dbox.a
>        ../../src/lib-storage/index/libstorage_index.a
>        ../../src/lib-index/libindex.a ../lib-storage/libstorage.a
>        ../lib-storage/subscription-file/libstorage_subscription_file.a
>        ../lib-imap/libimap.a ../lib-mail/libmail.a
>        ../lib-dict/libdict.a ../lib-charset/libcharset.a
>        ../lib/liblib.a -liconv
>
> 3) dovecot-cc calls /usr/bin/xlc with:
>
>   /usr/bin/xlc
>        -qlanglvl=ansi -g -bexpall -brtl -o imap
>        cmd-append.o cmd-capability.o cmd-check.o
>        cmd-close.o cmd-copy.o cmd-create.o cmd-delete.o
>        cmd-examine.o cmd-expunge.o cmd-fetch.o cmd-idle.o
>        cmd-list.o cmd-logout.o cmd-lsub.o cmd-namespace.o
>        cmd-noop.o cmd-rename.o cmd-search.o cmd-select.o cmd-sort.o
>        cmd-status.o cmd-store.o cmd-subscribe.o cmd-thread.o cmd-uid.o
>        cmd-unselect.o cmd-unsubscribe.o client.o commands.o
>        commands-util.o imap-expunge.o imap-fetch.o imap-fetch-body.o
>        imap-messageset.o imap-search.o imap-sort.o imap-sync.o
>        imap-thread.o mail-storage-callbacks.o main.o namespace.o
>        ../lib/mountpoint.o -L/usr/local/lib
>        ../lib-storage/register/libstorage-register.a
>        ../../src/lib-storage/index/maildir/libstorage_maildir.a
>        ../../src/lib-storage/index/mbox/libstorage_mbox.a
>        ../../src/lib-storage/index/dbox/libstorage_dbox.a
>        ../../src/lib-storage/index/libstorage_index.a
>        ../../src/lib-index/libindex.a ../lib-storage/libstorage.a
>        ../lib-storage/subscription-file/libstorage_subscription_file.a
>        ../lib-imap/libimap.a ../lib-mail/libmail.a
>        ../lib-dict/libdict.a ../lib-charset/libcharset.a
>        ../lib/liblib.a -liconv
>        ../lib-sql/libsql.a
>        -bE:.libs/libstorage-register.exp
>        -bE:.libs/libstorage_maildir.exp
>        -bE:.libs/libstorage_mbox.exp
>        -bE:.libs/libstorage_dbox.exp
>        -bE:.libs/libstorage_index.exp
>        -bE:.libs/libindex.exp
>        -bE:.libs/libstorage.exp
>        -bE:.libs/libstorage_subscription_file.exp
>        -bE:.libs/libimap.exp
>        -bE:.libs/libmail.exp
>        -bE:.libs/libdict.exp
>        -bE:.libs/libcharset.exp
>        -bE:.libs/liblib.exp
>        -bE:.libs/libsql.exp
>
>
> Notice the "-bE:..." lines. These lines are appended by dovecot-cc to
> initialize all globale symbols defined in libraries used to link imap.
> The .exp files are generate on the fly by dovecot-cc.
>
> The Library ../lib-sql/libsql.a was also being inserted, because of
> known dependencies.
>
>
> Regards, Ralf
>
>
> funkypunky drunky schrieb:
> > Hello Ralf,
> > Ohh thanks for your reply and i start to understand what is going on.
> You
> > tell everything very well. It is amazing. After i read your mail, I
> > export a
> > variable
> > export LDFLAGS="-Wl,-brtl" and now i find shared object files (.so) in
> > their proper places after compilation. At first glance everything seems
> ok
> > but when i tried to start dovecot
> > Edlopen(/usr/local/lib/dovecot/imap/lib10_quota_plugin.so) failed: rtld:
> > 0712-001 Symbol i_malloc was referenced
> >      from module /usr/local/lib/dovecot/imap/lib10_quota_plugin.so(),
> but a
> > runtime definition
> >            of the symbol was not found.
> > rtld: 0712-001 Symbol i_strdup was referenced
> >      from module /usr/local/lib/dovecot/imap/lib10_quota_plugin.so(),
> but a
> > runtime definition
> >            of the symbol was not found.
> > rtld: 0712-001 Symbol default_pool was referenced
> >      from module /usr/local/lib/dovecot/imap/lib10_quota_plugin.so(),
> but a
> > runtime definition
> >            of the symbol was not found.
> > rtld: 0712-001 Symbol mail_storage_get_mailbox_path was referenced
> >      from module /usr/local/lib/dovecot/imap/lib10_quota_plugin.so(),
> but a
> > runtime definition
> >            of the symbol was not found.
> > rtld: 0712-001 Symbol i_info was referenced
> >      from module /usr/local/lib/dovecot/imap/lib10_quota_plugin.so(),
> but a
> > runtime definition
> >            of the symbol was not found.
> > rtld: 0712-001 Symbol mountpoint_get was referenced
> >      from module /usr/local/lib/dovecot/imap/lib10_quota_plugin.so(),
> but a
> > runtime definition
> >            of the symbol was not found.
> > rtld: 0712-001 Symbol i_error was referenced
> >      from module /usr/local/lib/dovecot/imap/lib10_quota_plugin.so(),
> but a
> > runtime definition
> >            of the symbol was not found.
> > Additional errors occurred but are not reported.
> > Error: imap dump-capability process returned 89
> >
> > This symbols are not found. Now i get happy that i see the same error
> > message as you but the thing that i cannot understand these .exp files.
> I
> > have these exp files in their places, and they are created by aix
> > linker. (I
> > am using aix linker. IBM doesnt advice using gnu linker
> > http://www-128.ibm.com/developerworks/aix/library/au-gnu.html)
> > ./dovecot-1.0.rc28/src/plugins/acl/.libs/lib01_acl_plugin.exp
> > ./dovecot-1.0.rc28/src/plugins/convert/.libs/lib20_convert_plugin.exp
> > ./dovecot-1.0.rc28/src/plugins/quota/.libs/lib10_quota_plugin.exp
> > ./dovecot-1.0.rc28
> /src/plugins/imap-quota/.libs/lib11_imap_quota_plugin.exp
> > ./dovecot-1.0.rc28
> > /src/plugins/lazy-expunge/.libs/lib02_lazy_expunge_plugin.exp
> > ./dovecot-1.0.rc28/src/plugins/mail-log/.libs/lib20_mail_log_plugin.exp
> > ./dovecot-1.0.rc28/src/plugins/trash/.libs/lib11_trash_plugin.exp
> > Do u mean that i have to point these exp files with linker flag -bexpall
> .
> > From your script i can not understand. Maybe you can give an example
> with
> > export LDFLAGS="bexpall bla bla"
> > Thanx and best regards.
> >
>
> --
> ______________________________________________________________________
>
> Dipl.-Inform. (FH) Ralf Becker     Rechenzentrum (r/ft) der FH Trier
> (Network|Mail|Web|Firewall)           University of applied sciences
> Administrator                           Schneidershof, D-54293 Trier
>
> Mail: beckerr at fh-trier.de                      Fon: +49 651 8103 499
> WWW:  http://www.fh-trier.de/~beckerr          Fax: +49 651 8103 214
> PGP:  http://www.fh-trier.de/~beckerr/pgp      ICQ: <available>
> ______________________________________________________________________
>
> Wenn Gott gewollt haette, dass E-Mail in HTML geschrieben wuerden,
> endeten Gebete traditionell mit </amen>. (Tom Listen)
>
>
>


More information about the dovecot mailing list