Hi again,

we resolved this on the dovecot list, but to not keep open ends, I'll
shortly reply here as well.

Also sorry for keeping your post in mailman's queue, indeed I don't
often check it as it almost never contains non-spam mails.

On Thu, 2010-10-07 at 13:21 +0200, [email protected] wrote:
> I just discovered, that in dovecot-managesieve-0.2.1-11 (at least in the 
> el5.x86_64.rpm) the /usr/libexec/dovecot/managesieve-login is missing the 
> rpath to the libs:
> ldd /usr/libexec/dovecot/managesieve-login
>          libdovecot-login.so.0 => not found
>          libdovecot.so.0 => not found
>          librt.so.1 => /lib64/librt.so.1 (0x00000032e9600000)
>          libc.so.6 => /lib64/libc.so.6 (0x00000032e8200000)
>          libpthread.so.0 => /lib64/libpthread.so.0 (0x00000032e8e00000)
>          /lib64/ld-linux-x86-64.so.2 (0x00000032e7e00000)
> 
> but the libraries are in the correct place:
> 
> /usr/lib64/dovecot/libdovecot.so.0 -> libdovecot.so.0.0.0
> 
> This affects only managesieve-login, the managesieve binary is ok, as 
> there the rpath was generated from the libdovecot-sieve.la file, which was 
> still existing at build time (at least this is my explanation of the 
> difference)
> 
> # Directory that this library needs to be installed in:
> libdir='/usr/lib64/dovecot'

The build needs to have an -rpath hardcoded which the usual
dovecot/dovecot-pigeonhole builds master with the use of libtool.
dovecot.la hints to further dependent builds that it lives
under /usr/lib64/dovecot so these builds can automagically apply -rpath
arguments to it.

The Fedora/RHEL guidelines depreciate the use of rpath and *.la files
for various reasons. The alternative would be to either make dovecot's
libs globally available through an appropriate ldconfig setup or add
-rpath to dovecot-config.

Exposing $libdir/dovecot to the world is not a good idea as many libs
there have too generic names. -rpath is here a sane exception to the
rule. Also the fastest way to get this done is keeping the *.la files
from dovecot proper, another way would be to patch up dovecot-config to
do so, but this is difficult to do in a portable way (libtool and the
rest of autotools are doing the heavy portability stuff like using
proper rpath setups, so removing them leaves you with reinventing the
wheel).

Not so short after all ...
-- 
http://thimm.gr/ - http://ATrpms.net/

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
atrpms-devel mailing list
[email protected]
http://lists.atrpms.net/mailman/listinfo/atrpms-devel

Reply via email to