For starters, download Netscape Directory Server 6.11 for Linux. This is a fairly recent ldap sdk (5.09 I think) compiled on Linux kernel 2.4 (RH 7.2). This is a trial version of DS, but the sdk included with it won't expire on you. Install the DS. The ldap sdk files are found in <server root>/shared

Robert Petrie wrote:

Further to this post... The binaries I downloaded from Sun (5176.html) were for ver 2.2 of the kernel! Of course, ver 2.4 made vast improvements in threads and I'll bet that's the source of my pthread error. So, I'm in the same boat, back to building the SDK from source. Guess how I'll be spending New Years Day ... and most of January?

Robert Petrie wrote:

I'm trying the same thing with RH 7.3. First, I gave up on compiling the SDK and downloaded the binaries. Try: http://wwws.sun.com/software/download/developer/5176.html
If you can figure out the difference between "optimized" and "debug" I'm eager to hear.

rpm's of perldap are for version 1.4. Don't get excited because the gotcha is that it requires Perl 5.003 and RH 7.2/7.3 comes with Perl 5.6x. You/we need perldap 1.4.1. There are lots of sources for that and I think I used ftp://ftp.perldap.org/pub/perldap/

Then it came time to put it all together and I found:
http://www.mozilla.org/directory/perlinstall.txt

I did %perl Makefile.PL
My SDK libraries were in /opt/ldapsdk3 so that was my first response.
For the rest, I took the defaults but the "multiple libraries found" still has me confused.
[root@compaq perldap-1.4.1]# perl Makefile.PL

PerLDAP - Perl 5 Module for LDAP
================================
Directory containing 'include' and 'lib' directory of the Netscape
LDAP Software Developer Kit (default: /usr): /opt/ldapsdk3
Using LDAPv3 Developer Kit (default: yes)?
Include SSL Support (default: yes)? no
Located multiple libraries:
- libldap50.so
- libssldap50.so
- libprldap50.so
- libldap50.a
Libraries to link with (default: -L/opt/ldapsdk3/lib -lldap50):
Writing Makefile for Mozilla::LDAP::API

Then
%make
%make install

That seemed too easy but I got no errors. I ran a small PerLDAP script and got a showstopper:

Before you ran your perl script, did you first set LD_LIBRARY_PATH to the location of your ldap sdk shared libraries?



/usr/bin/perl: relocation error: /tmp/sdk3/lib/libldap50.so: undefined symbol: pthread_key_create

That's where I'm stuck.
Thoughts?
Bob Petrie

CA Snyder wrote:

I'm trying to install the PerLDAP software on a RH 7.2 Linux machine.

This requires a copy of the c-sdk library. I've downloaded the nspr-4.2.2 and nss-3.6.1 binaries for the Linux2.4
machines. The instructions on
http://www.mozilla.org/directory/csdk.html state to drop this into the
mozilla/dist directory of the PerLDAP source code. I retrieved this
source code via the cvs mechanism, and I untarred the afore binaries
into mozilla/dist/nspr-4.2.2 etc.

This didn't seem to work so I dropped the numbers from the directories
and had simply mozilla/dist/nspr, etc.

This gave me a certain number of errors finding
mozilla/dist/include/nspr, and I changed the folder names to
mozilla/dist/include/nspr and include/nss.

Now I'm seeing errors with header files not being found. The first is:
In file included from ldappr-dns.c:29:
ldappr-int.h:30:18: nspr.h: No such file or directory

I'm relatively confident that my problem is in getting the directories
laid out properly. I would greatly appreciate any suggestions as to
how to get the c-sdk to compile correctly.

Alternatively, pre-built c-sdk binaries, or even an rpm or such for
PerLDAP itself would be great. I'm not particular to the method by
which PerLDAP is installed, I only wish to install it.

Thanks,
Chris Snyder




Reply via email to