php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #41254 64bit libmcrypt not found after bug #39935 fixed
Submitted: 2007-05-01 16:54 UTC Modified: 2010-12-20 12:26 UTC
From: jason at ionzoft dot com Assigned:
Status: Not a bug Package: mcrypt related
PHP Version: 5.2.1 OS: RedHat ES 4
Private report: No CVE-ID: None
 [2007-05-01 16:54 UTC] jason at ionzoft dot com
Description:
------------
This is not a bug.

It is documentation of a problem encountered when using libmcrypt on 64 bit machines and upgrading PHP to 5.2.1.

---------------------------------------

In reference to Bug #39935 (extensions tidy,mcrypt,mhash,pdo_sqlite ignores --with-libdir), I have encountered an error post-compile.

Previously, mcrypt ignored --with-libdir, and naturally looked in /usr/local/lib for libmcrtpy.so.4.

After bug #39935 was fixed, libmcrypt began to look in the right place (which I have specified as /lib64 on 64 bit machines).

A potential solution is to compile libmcrypt with --libdir=/lib64.

It took a lot of hunting to find this answer, and perhaps there is a place that this information could be posted.

Thanks.
Jason Garber



Reproduce code:
---------------
./configure \
--with-libdir=lib64 \
--with-apxs2=/usr/sbin/apxs \
--with-config-file-path=/etc \
--enable-sigchild \
--with-openssl \
--enable-bcmath \
--with-curl \
--with-mcrypt \
--with-mysql \
--with-mysqli=/usr/bin/mysql_config \
--enable-sockets \
--with-gd \
--with-jpeg-dir=lib64 \
--with-png-dir \
--with-freetype-dir \
--with-zlib


make

make test

Expected result:
----------------
{successful tests}

Actual result:
--------------
/usr/local/src/ServerSoftware/PHP/php-5.2.1/sapi/cli/php: error while loading shared libraries: libmcrypt.so.4: cannot open shared object file: No such file or directory
make: [test] Error 127 (ignored)


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2007-05-01 21:46 UTC] judas dot iscariote at gmail dot com
My patch is correct, linux distributions on x86_64 are usually biarch, /usr/lib contains 32 bit libraries and /usr/lib64 64 bit ones.

If you wrongly installed a 64 bit libmcrypt in /usr/lib you need to recompile it to install shared libraries in the proper location.. if your linux distribution is pure 64 bit, then libmcrypt may be installed in /usr/lib and php should be compiled --with-libdir=lib as all system libraries will reside there in that case..

This is not a PHP problem.
 [2007-05-01 23:50 UTC] sniper@php.net
see above..
 [2010-12-20 12:26 UTC] jani@php.net
-Package: Tidy +Package: mcrypt related
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Dec 21 12:01:31 2024 UTC