Edit report at https://bugs.php.net/bug.php?id=64258&edit=1
ID: 64258 Updated by: fel...@php.net Reported by: spamik at yum dot pl Summary: --with-mcrypt causes bad linking (with --with-libxml-dir). Reason: -lltdl flag -Status: Open +Status: Assigned Type: Bug Package: *Compile Issues PHP Version: 5.4.16 -Assigned To: +Assigned To: derick Block user comment: N Private report: N New Comment: Derick, feedback has been supplied. Previous Comments: ------------------------------------------------------------------------ [2013-06-13 17:25:10] spamik at yum dot pl ./buildconf --force sorry I've missed that. Now patch does work ------------------------------------------------------------------------ [2013-06-13 17:11:46] spamik at yum dot pl # cat /usr/include/mutils/mcrypt.h | grep VER #define MCRYPT_API_VERSION 20021217 #define LIBMCRYPT_VERSION "2.5.8" I've aplied PATCH but it DOES NOT WORK (tested on freshly unpacked source) root@sv18 [/root/naox/php-5.4.16]# patch -p1 < p patching file ext/mcrypt/config.m4 # ./configure --with-libxml-dir=/usr/libxml2-2.7.8 --with-mcrypt && make root@sv18 [/root/naox/php-5.4.16]# ldd sapi/cli/php|grep xml libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00007f95fe8bd000) root@sv18 [/root/naox/php-5.4.16]# cat Makefile|grep 'lltdl' EXTRA_LIBS = -lcrypt -lresolv -lcrypt -lrt -lmcrypt -lltdl -lrt -lm -ldl -lnsl - lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt -lxml2 -lz -lm -lxml2 -lz - lm -lxml2 -lz -lm -lcrypt -lltdl is still present even with the pathc ------------------------------------------------------------------------ [2013-06-13 08:56:02] der...@php.net The following patch has been added/updated: Patch Name: mcrypt-config-20130613 Revision: 1371113762 URL: https://bugs.php.net/patch-display.php?bug=64258&patch=mcrypt-config-20130613&revision=1371113762 ------------------------------------------------------------------------ [2013-06-13 08:55:32] der...@php.net It's a linker helper library as used by gnu libtool. I have no idea why it messes the libxml include though, and as far as I know, that library is no longer needed since libmcrypt 2.5.4. So unless your version is that old, -lltdl should not be part of your Makefile. If I manually remove -lltdl from the Makefile, PHP still compiles and links, so I would recommend you try the following: cat /usr/include/mutils/mcrypt.h | grep VER And let me know what it says. Secondly, apply the attached patch to ext/mcrypt/config.m4 and then run: make clean ./buildconf --force ./config.nice make and see which libxml it now links too. ------------------------------------------------------------------------ [2013-06-13 00:57:01] spamik at yum dot pl root@sv18 [~/php-5.4.16]# ./configure --with-libxml-dir=/usr/libxml2-2.9.0 && make root@sv18 [~/php-5.4.16]# ldd sapi/cli/php|grep xml libxml2.so.2 => /usr/libxml2-2.9.0/lib/libxml2.so.2 (0x00007f6b2c098000) root@sv18 [~/php-5.4.16]# ./configure --with-libxml-dir=/usr/libxml2-2.9.0 -- with-mcrypt && make root@sv18 [~/php-5.4.16]# ldd sapi/cli/php|grep xml libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00007f1478692000) When configured with mcrypt Makefile has EXTRA_LIBS = -lcrypt -lresolv -lcrypt -lrt -lmcrypt -lltdl -lrt -lm -ldl -lnsl -lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt - lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt when configured without mcrypt Makefile has EXTRA_LIBS = -lcrypt -lresolv -lcrypt -lrt -lrt -lm -ldl -lnsl -lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt -lxml2 -lz -lm - lxml2 -lz -lm -lxml2 -lz -lm -lcrypt problem seems to be caused by flag -lltdl. When removed manualy, libxml2 is liked ok. What is this flag? ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=64258 -- Edit this bug report at https://bugs.php.net/bug.php?id=64258&edit=1