openldap make error 1
Hi all,
I am trying to compile openldap on my system and the following error results. Can someone help please. [root@localhost openldap-2.3.42]# make Making all in /root/openldap-2.3.42 Entering subdirectory include make[1]: Entering directory `/root/openldap-2.3.42/include' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/root/openldap-2.3.42/include' Entering subdirectory libraries make[1]: Entering directory `/root/openldap-2.3.42/libraries' Making all in /root/openldap-2.3.42/libraries Entering subdirectory liblutil make[2]: Entering directory `/root/openldap-2.3.42/libraries/liblutil' rm -f version.c ../../build/mkversion -v "2.3.42" liblutil.a > version.c gcc -g -O2 -I../../include -I../../include -I/usr/local/BerkeleyDB.4.5/include -c -o utils.o utils.c gcc -g -O2 -I../../include -I../../include -I/usr/local/BerkeleyDB.4.5/include -c -o fetch.o fetch.c fetch.c: In function âldif_open_urlâ: fetch.c:52: warning: assignment discards qualifiers from pointer target type gcc -g -O2 -I../../include -I../../include -I/usr/local/BerkeleyDB.4.5/include -c -o getpeereid.o getpeereid.c getpeereid.c: In function âgetpeereidâ: getpeereid.c:52: error: storage size of âpeercredâ isnât known make[2]: *** [getpeereid.o] Error 1 make[2]: Leaving directory `/root/openldap-2.3.42/libraries/liblutil' make[1]: *** [all-common] Error 1 make[1]: Leaving directory `/root/openldap-2.3.42/libraries' make: *** [all-common] Error 1 [root@localhost openldap-2.3.42]# |
Did you run
Code:
make depend |
yes i have run make depend before make
|
1 more thing is, i see openldap installed already on my fedora core 9 installation but i do not see slapd. Is my opendldap software installed properly? or do i need to install it agian?
|
About the error you get:
I think you've hit this bug. Use the patch proposed to see if it works. Or you can use openldap 2.4.10 to see if it works. About Fedora's openldap: I don't use Fedora, but I think you mean the Directory Server that comes with Fedora and RH. Regards |
this patch, how should i apply? Please guide.
yes about the fedora, it came with that particular package which doesn't contain slapd. Thanks a lot for your quick reply :) |
Create a file e.g. opeldap.patch into /root/openldap-2.3.42 (I guess you've extracted the openldap.tgz there) containing:
Quote:
Code:
patch -Np1 -i opeldap.patch |
While applying patch, i got this error
[root@localhost openldap-2.3.39]# patch -Np1 -i openldap.patch patching file libraries/liblutil/getpeereid.c patch: **** malformed patch at line 4: * <http://www.OpenLDAP.org/license.html>. [root@localhost openldap-2.3.39]# |
My fault. The QUOTE tag does not keep the spaces. There are 2 spaces in the beginning of lines 4,5 (those staring with the *)
See if this is better Code:
--- openldap-2.4.8.orig/libraries/liblutil/getpeereid.c |
sorry for the confusion in the version. First in installed the 2.4 version but i found the latest stable version is 2.3.39 so i guessed that could be the problem and installed the old one. Is it okay if i try 2.3.42?
|
I think using the latest release is better, since it resolves various problems (either bugs or security issues). You can read here the changes of 2.4.x branch.
Anyway, did you managed to patch getpeereid.c and build the sources? |
THANKS A TON!!!!
Its working now . Now, can you tell me what this code is? I mean what does that --- and +++ mean? i can make out something like add the lines beginning with +? Again, Thank you very much... |
yes i've installed the latest version again openldap-2.4.10. And i patched it also with the given patch.
|
Quote:
Now about the code in the patch file: --- means the original file and +++ the patched file. The numbers between the @@ are the line numbers to change and + mean add what follows (a "-" mean remove). You could add just the line "#define _GNU_SOURCE" followed by a blank line to get the same result. Btw what is your distro, that has this problem? |
The distro is Fedora core 9.
|
All times are GMT -5. The time now is 04:30 AM. |