php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #24141 Massive configure script failures when LDAP is linked against kerberos.
Submitted: 2003-06-12 01:49 UTC Modified: 2003-06-13 06:07 UTC
Votes:1
Avg. Score:5.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:1 (100.0%)
Same OS:1 (100.0%)
From: robbat2 at gentoo dot org Assigned:
Status: Not a bug Package: Compile Failure
PHP Version: 4.3.2 OS: Gentoo Linux
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: robbat2 at gentoo dot org
New email:
PHP Version: OS:

 

 [2003-06-12 01:49 UTC] robbat2 at gentoo dot org
Description:
------------
On a system that has OpenLDAP installed, and dynamically linked against kerberos, the configure script starts massively failing after adding in -lldap.

When that starts, it gives incorrect errors until it hits some check that causes the configure script to bail out.

This results in a VERY incorrect error message being given by the configure script.

This is similar to bug item #4133, but only a workaround was provided for that bug, and not a proper fix.

I think in this case, putting the kerberos checks together with the ldap stuff might solve the problem, but I'm not a configure guru.

Expected result:
----------------
Two things:
Firstly, there needs to be some form of checks against the libraries that are added to the LIBS list so that the system catches ALL of the extra libraries they are linked against.

Secondly, the configure script SHOULD fail sooner after errors, and give more intelligable answers.
It should have failed right after the initial error that linking against LDAP gave.

Actual result:
--------------
You can see the entire config.log file and more details at our bugzilla: http://bugs.gentoo.org/show_bug.cgi?id=22635

snippet from config.log when it first fails:
---- CUT ----
configure:41615: gcc -o conftest -O2 -mcpu=i686 -pipe  -L/usr/lib  conftest.c -lldap -llber -lcrypt -lpam -lxsltbreakpoint -lxml2 -lxslt -lz -lndbm -lgdbm -lcurl -lcrack -lbz2 -lz -lssl -lcrypto -lresolv -lm -ldl -lnsl  -lcurl -lz -lssl -lcrypto -ldl -lz -lxml2 -lz -lm 1>&5
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.2/../../../../i686-pc-linux-gnu/bin/ld: warning: libkrb4.so.2, needed by /usr/lib/libldap.so, not found (try using -rpath or -rpath-link)
configure:41587: checking for ldap_start_tls_s
configure:41615: gcc -o conftest -O2 -mcpu=i686 -pipe  -L/usr/lib  conftest.c -lldap -llber -lcrypt -lpam -lxsltbreakpoint -lxml2 -lxslt -lz -lndbm -lgdbm -lcurl -lcrack -lbz2 -lz -lssl -lcrypto -lresolv -lm -ldl -lnsl  -lcurl -lz -lssl -lcrypto -ldl -lz -lxml2 -lz -lm 1>&5
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.2/../../../../i686-pc-linux-gnu/bin/ld: warning: libkrb4.so.2, needed by /usr/lib/libldap.so, not found (try using -rpath or -rpath-link)
configure:41645: checking whether to enable multibyte string support
---- CUT ----

Here is where it finally fails and gives up:
---- CUT ----
configure:75358: checking for Sablotron version
configure:75383: gcc -o conftest -O2 -mcpu=i686 -pipe  -I/usr/include -L/usr/lib  conftest.c -lcrypt -lpspell -lpq -lpdf -lz -ltiff -lpng -ljpeg -lmysqlclient -lmhash -lmcrypt -lltdl -lldap -llber -lcrypt -lpam -lxsltbreakpoint -lxml2 -lxslt -lz -lndbm -lgdbm -lcurl -lcrack -lbz2 -lz -lssl -lcrypto -lresolv -lm -ldl -lnsl  -lcurl -lz -lssl -lcrypto -ldl -lz -lxml2 -lz -lm -lodbc -lnetsnmp -lcrypto -lm -lcrypt 1>&5
/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.2/../../../../i686-pc-linux-gnu/bin/ld: warning: libkrb4.so.2, needed by /usr/lib/libldap.so, not found (try using -rpath or -rpath-link)
configure: failed program was:
#line 75365 "configure"
#include "confdefs.h"

#include <stdlib.h>
#include <sablot.h>

int main ()
{
double version;
version = atof(SAB_VERSION);

if (version >= 0.96) {
exit(0);
}
exit(255);
}
---- CUT ----

The error that the above failure throws. Totally incorrect about the problem of course.
---- CUT ----
checking for Sablotron version... configure: error: Sablotron version 0.96 or
greater required.
---- CUT ----

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2003-06-12 03:01 UTC] derick@php.net
Where is "libkrb4.so.2" on your system, and is it in the paths described in /etc/ld.so.conf ? And did you run ldconfig after installing that ldap?
 [2003-06-13 01:52 UTC] robbat2 at gentoo dot org
Hi Derick, a response.

As for the part of not finding the libkrb4.so.2, it turned out that the user unmerged it without heed to that was linked against it.

However I still that that the configure script should have failed MUCH earlier to make this failure easier to catch and not result in totally erroroneus error messages.
 [2003-06-13 06:07 UTC] sniper@php.net
As this was not PHP bug -> bogus.

In future, there is going to be a sanity test in ldap configure part, so this will get caught there already.

 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Wed Sep 11 17:02:22 2024 UTC