I just built net-mail/dovecot-1.1.4-r1 for a few VServers, and on some of them starting dovecot failed with the following message: /usr/sbin/dovecot: error while loading shared libraries: libcap.so.1: cannot open shared object file: No such file or directory I guess this is because on the build machine libcap.so.1 is available, but on the VServers it is not. I built dovecot on the VServers where it wouldn't start, and now it runs fine there - but I fear this will happen again next time. What to do about it? Introduce a USE flag? Reproducible: Always
There's the caps USE flag to control this. It's one of those USE flags you want to set globally and that will infect many libraries.
Thanks, didn't know that... so this bug report is invalid, I guess.
I have the same problem, but the caps useflag is set globally in /etc/make.conf. Just upgraded to net-mail/dovecot-1.1.4-r1 and now, when i restart dovecot, i get the message: /usr/sbin/dovecot: error while loading shared libraries: libcap.so.1: cannot open shared object file: No such file or directory Also, updating world deep with new use flags does not affect anything so i assume that caps is compiled in already. server ~ # whereis libcap.so.1 libcap.so: /lib/libcap.so /lib/libcap.so.2 /usr/lib/libcap.so /lib64/libcap.so /lib64/libcap.so.2 /usr/lib64/libcap.so 2.6.23-hardened-r12 Intel(R) Xeon(R) CPU E5310 @ 1.60GHz x86_64
well, dovecot itself would need to support USE=caps ...
Fixed in 1.1.7-r1. dovecot now unconditionally depends on sys-libs/libcap as configure does not support any --with/enable-capabilities switch and I'm not going to patch configure for that. If you don't like that, ask upstream to change configure :)