Bug 431771

Summary: symbolic link libltdl.so to libltdl.so.3.1.4 missing
Product: Red Hat Enterprise Linux 5 Reporter: neil davis <davisneilp>
Component: libtoolAssignee: Karsten Hopp <karsten>
Status: CLOSED NOTABUG QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: 5.1   
Target Milestone: rc   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-02-07 11:51:13 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description neil davis 2008-02-06 21:27:20 UTC
Description of problem:
symbolic link libltdl.so to libltdl.so.3.1.4 missing

Version-Release number of selected component (if applicable):
3.1.4

How reproducible:
Try compiling PHP:
./configure  --with-mcrypt=/usr/local --with-apxs2=/usr/local/apache2/bin/apxs
--enable-sysvshm --enable-sysvsem --enable-sysvmsg --with-mysql=/usr/local
--with-ldap=/usr --with-kerberos --with-imap-ssl --with-openssl=/usr/local/ssl
--with-curl --with-xsl=/usr --enable-pcntl --with-mysqli

On an "out of the box" ES 5.1 installation on i386

Steps to Reproduce:
1. Set up a es5.1 on i386
2. compile php with the above configure line after installing dependancies
3. when php's scripts are trying to link, the compile process dies.
  
Actual results:
... long set of compile messages ... blah ...d/zend_objects_API.lo
Zend/zend_default_classes.lo Zend/zend_execute.lo
sapi/apache2handler/mod_php5.lo sapi/apache2handler/sapi_apache2.lo
sapi/apache2handler/apache_config.lo sapi/apache2handler/php_functions.lo
main/internal_functions.lo -lcrypt -lexslt -lcrypt -lrt -lmysqlclient -lmcrypt
-lltdl -lldap -llber -lcurl -lssl -lcrypto -lresolv -lm -ldl -lnsl -lxml2 -lz
-lm -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lcurl -lgssapi_krb5 -lkrb5
-lk5crypto -lcom_err -lresolv -ldl -lidn -lssl -lcrypto -lz -lxml2 -lz -lm
-lmysqlclient -lz -lcrypt -lnsl -lm -lxml2 -lz -lm -lcrypt -lxml2 -lz -lm -lxml2
-lz -lm -lxml2 -lz -lm -lxslt -lxml2 -lz -lm -lcrypt  -o libphp5.la
/usr/bin/ld: cannot find -lltdl
collect2: ld returned 1 exit status
make: *** [libphp5.la] Error 1

Expected results:
php should compile and link

Additional info:
Fix is very simple...
1. cd /usr/lib
2. ln -s libltdl.so.3.1.4 libltdl.so

PHP will then compile fine. 

openssl, mcrypt, libmcrypt, mhash, etc didn't seem to mind that this link was
missing. It actually smelled like a PHP problem to me.

Reason I don't use RPMs for LAMP:
We compile LAMP from source so we can react to 0day vulnerabilities and LAMP
related security updates as fast as possible. This may be why this issue isn't
widely known since sane people use yum. Installing binaries via RPM would not
cause this to manifest.

-Neil

Comment 1 Karsten Hopp 2008-02-07 11:51:13 UTC
You need to install libtool-ltdl-devel. This package provides the required symlink

Comment 2 neil davis 2008-02-08 15:57:16 UTC
Added note to php.net *nix installation page for RH EL5 so others are aware of
this change in convention from EL 4.1.

thx,
Neil