I maded a large update on server packages. The update process stopped at courier-imap and courier-authlib packages. I requested portage to mask >=net-libs/courier-authlib-0.62.2 >=sys-devel/libtool-2.2 so i could get the courier-authlib-0.60.6 to work. After that i changed package mask and commnet the lines above to get libtool-2.2.6b again. I have the following package masks yet: >=dev-db/libpq-8.1.0 >=dev-db/mysql-5.0.84-r1 Now in some compilation stage at courier-imap it stops on following messages: make[3]: Entering directory `/var/tmp/portage/net-mail/courier-imap-4.0.6-r3/work/courier-imap-4.0.6/numlib' Compiling atotimet.c ./libtool: line 454: CDPATH: command not found Compiling atouidt.c ./libtool: line 454: CDPATH: command not found ./libtool: line 1139: func_opt_split: command not found libtool: Version mismatch error. This is libtool 2.2.6b, but the libtool: definition of this LT_INIT comes from an older release. libtool: You should recreate aclocal.m4 with macros from libtool 2.2.6b libtool: and run autoconf again. make[3]: *** [atouidt.lo] Error 1 make[3]: *** Waiting for unfinished jobs.... ./libtool: line 1139: func_opt_split: command not found libtool: Version mismatch error. This is libtool 2.2.6b, but the libtool: definition of this LT_INIT comes from an older release. libtool: You should recreate aclocal.m4 with macros from libtool 2.2.6b libtool: and run autoconf again. make[3]: *** [atotimet.lo] Error 1 Reproducible: Always Steps to Reproduce: 1.emerge --update --deep --newuse -pv courier-imap 2. emerge --update --deep --newuse courier-imap Expected Results: I would like that the courier-imap keep compiling as on older versions. I feel that problem is related to updates on libtool package. I also needed to mask the most recents versions os courier-authlib due to packages messages about poor programming practices and problems with postgresql with version lower then 8.4. USE="agg -apache2 -berkdb cgi -cracklib ctype -cups curl fontconfig force-cgi-redirect gd gdal geos gdbm -gnome jpeg json mssql mysql mysqli -openmp php png postgis postgres -python simplexml -xpm xml -X #binutils-2.20.1 break gcc on amd64 so do not use global ~amd64 #ACCEPT_KEYWORDS="~amd64"
Created attachment 227963 [details] emerge info
Could you attach full build log ?
Created attachment 228033 [details] The build.log as requested. This is the full build.log
IIRC, this problem is considered fixed by upgrading to more recent courier - at least that what a simple query for old courier bus suggests.
(In reply to comment #4) But there is not a more recent version at portage tree. After that, only courier-imap-4.5.0 is available. And that courier version requires courier-authlib-0.62.4 that did not compiled too due to problems with postgres lib. I checked portage package site http://packages.gentoo.org/package/net-mail/courier-imap?arches=linux and it is marked as stable on amd64. Perhaps that should be masked again if there are problems yet.
I could compile courier-imap-4.5.0 but without postgres use flag on courier-authlib. Will try discover the problem between courier-authlib and postgresql source.
What happens if you try to emerge courier-imap-4.0.6-r3 with old stable libtool-1.5.26 ? I resolve the bug as TEST-REQUEST. I don't know if there is something we can do here. Please reopen, only if you have something more specific to report. Thank you for this report.
Hello. I did not tested the old libtool version since php and a lot more packages are now requiring the version 2.2. I could manage the compilation of dependency package courier-authlib-0.62.4 with postgres USE flag by adding the missing prototype below at file authpgsql.h extern const char *pg_encoding_to_char(int encoding); Looks like a problem between libpq headers( here version is 8.1.11 ) that is not declaring that function prototype. The function pg_encoding_to_char is called only to make an error message string. So putting an external declaration to it or making a check for that function and if not available declaring an empty alternative would be an easy change I guess. I dont remember anymore how to create a C macro. It will be something like #ifndef pg_encoding_to_char const char *pg_encoding_to_char(int encoding){ return "libpq without pg_encoding_to_char function. Encoding name unavailable"; } #endif I do not know how to create a new ebuild with this line added so I put this here if you wish to add a fix to courier-authlib-0.62.4 package. This bug seems to be same as #297893. But on that bug you told people to upgrade to veriosn 8.4. With this small change above it will work on postgres version 8.0 too on AMD64. You may close it. I just put the new info here if some more need it.
@mainainers: Don't know what to do with this report, your call.
If I understood correctly, you want to keep an old version of postgresql, while using newer php (which requires libtool 2.2, as courier-imap >= 4.5 does)? Well at least for courier-imap, patches are welcome, but I'd guess it would still be easier for you to update postgresql-base to current stable (8.4)
(In reply to comment #10) Yes you are right. The main reason to not upgrade postgresql right now is because it has several spatial databases on that cluster. I already know that pg_dump do not work on export of spatial databases between different versions of postgresql. But as I said I just put the new info available if someone want it to work on little more older versions of postgres.