I want to update my OpenLDAP to 2.3.39 on my Sun Solaris 10 last year I installed OpenLDAP 2.3.32 without problem. All software requirements as specified in the README file are met
(default prefix /usr/local used) # ./configure # make # make depend # make # make test # make install all succeed
but $ /usr/local/bin/ldapsearch answers: Killed on the other hand, if I use the ldapsearch binary from my openldap-2.3.39 build directory: # ./clients/tools/ldapsearch succeeds and I can perform a search on my LDAP database returning the correct results..
I noticed a big difference in size between: -rwxr-xr-x 1 root root 457772 Apr 28 09:02 ./clients/tools/ldapsearch and -rwxr-xr-x 1 root root 1023664 Apr 28 09:27 /usr/local/bin/ldapsearch
All the clients tools have that same size difference between the compiled versions in ./openldap-2.3.39/clients/tools/ldap* and the ones in /usr/local/bin/ldap*
I also noted (from my notes of last year), that the installed versions of the 2.3.32 did not have such size differences...
What changed in make install between 2.3.32 and 2.3.39 and how to fix this?
What does it print before "Killed"? I can't think of how to coerce that, and only that, out of a binary. It is a binary, right? (elfdump and/or file?)
My guess would be that something in your build environment changed. The fact that your binaries are in /usr/local without setting an RPATH is pretty suspect, for one thing -- I'd assume you put your libs in /usr/local/lib.
If it's really not printing anything other than "Killed," you'll need another tool to get observability. ldd comes to mind as a first step.
On Mon, 28 Apr 2008, Pieter Donche wrote:
I want to update my OpenLDAP to 2.3.39 on my Sun Solaris 10 last year I installed OpenLDAP 2.3.32 without problem. All software requirements as specified in the README file are met
(default prefix /usr/local used) # ./configure # make # make depend # make # make test # make install all succeed
but $ /usr/local/bin/ldapsearch answers: Killed on the other hand, if I use the ldapsearch binary from my openldap-2.3.39 build directory: # ./clients/tools/ldapsearch succeeds and I can perform a search on my LDAP database returning the correct results..
I noticed a big difference in size between: -rwxr-xr-x 1 root root 457772 Apr 28 09:02 ./clients/tools/ldapsearch and -rwxr-xr-x 1 root root 1023664 Apr 28 09:27 /usr/local/bin/ldapsearch
All the clients tools have that same size difference between the compiled versions in ./openldap-2.3.39/clients/tools/ldap* and the ones in /usr/local/bin/ldap*
I also noted (from my notes of last year), that the installed versions of the 2.3.32 did not have such size differences...
What changed in make install between 2.3.32 and 2.3.39 and how to fix this?
On Mon, 28 Apr 2008, Pieter Donche wrote: ...
but $ /usr/local/bin/ldapsearch answers: Killed on the other hand, if I use the ldapsearch binary from my openldap-2.3.39 build directory: # ./clients/tools/ldapsearch succeeds and I can perform a search on my LDAP database returning the correct results..
I noticed a big difference in size between: -rwxr-xr-x 1 root root 457772 Apr 28 09:02 ./clients/tools/ldapsearch and -rwxr-xr-x 1 root root 1023664 Apr 28 09:27 /usr/local/bin/ldapsearch
All the clients tools have that same size difference between the compiled versions in ./openldap-2.3.39/clients/tools/ldap* and the ones in /usr/local/bin/ldap*
Sounds like the 'strip' program that you're using is broken. What's the output of "which strip"? If it's _not_ /usr/ccs/bin/strip, then try moving /usr/ccs/bin to the front of your path and redo the install. If that fixes it, then REMOVE the broken strip program.
Philip Guenther
Hi Philip, You where quite right! the /usr/local/bin/strip program is to blame...
I have both /usr/local/bin and /usr/css/bin in my $PATH (and in that order).
I renamed /usr/local/bin/strip to /usr/local/bin/strip.broken so that "which strip" now finds /usr/css/bin/strip
I did the make install again and now all the /usr/local/bin/ldap* binaries are much smaller (sizes as I would expect), and /usr/local/bin/ldapsearch now does exactly what I want...
I see from my documentation that my /usr/local/bin/strip comes from installing GNU binutils, version 2.17, which i installed Apr 18 2007, just 2 days after I installed my previous openldap (version 2.3.32)
/usr/local/bin/strip although has the same date and bytesize now as it had a year ago (I record files changed in /usr/local directories after installing new packages) (and my $PATH also did not change in the last year, /usr/local/bin always was before /usr/css/bin..) I have many other software installed after GNU binutils, never had that problem ... ... quite strange ..
Never thought a GNU distributed set of tools could contain a broken program ... ??!?
On Mon, 28 Apr 2008, Philip Guenther wrote:
On Mon, 28 Apr 2008, Pieter Donche wrote: ...
but $ /usr/local/bin/ldapsearch answers: Killed on the other hand, if I use the ldapsearch binary from my openldap-2.3.39 build directory: # ./clients/tools/ldapsearch succeeds and I can perform a search on my LDAP database returning the correct results..
I noticed a big difference in size between: -rwxr-xr-x 1 root root 457772 Apr 28 09:02 ./clients/tools/ldapsearch and -rwxr-xr-x 1 root root 1023664 Apr 28 09:27 /usr/local/bin/ldapsearch
All the clients tools have that same size difference between the compiled versions in ./openldap-2.3.39/clients/tools/ldap* and the ones in /usr/local/bin/ldap*
Sounds like the 'strip' program that you're using is broken. What's the output of "which strip"? If it's _not_ /usr/ccs/bin/strip, then try moving /usr/ccs/bin to the front of your path and redo the install. If that fixes it, then REMOVE the broken strip program.
Philip Guenther
On Mon, 28 Apr 2008, Pieter Donche wrote:
You where quite right! the /usr/local/bin/strip program is to blame...
...
I see from my documentation that my /usr/local/bin/strip comes from installing GNU binutils, version 2.17, which i installed Apr 18 2007, just 2 days after I installed my previous openldap (version 2.3.32)
That begs the question of why you installed GNU binutils. If the problem you installed them to solve was of a limited scope, you should consider only installing them into a non-standard directory so that they don't get used by default.
Philip Guenther
Pieter Donche wrote:
I want to update my OpenLDAP to 2.3.39 on my Sun Solaris 10 [..] but $ /usr/local/bin/ldapsearch answers: Killed
Note Solaris has sometimes Sun's LDAP tools/libs pre-installed. Are you sure that this particular executable is not the Sun command-line tool? Are you sure there's no library mix regarding libldap.so?
I noticed a big difference in size between: -rwxr-xr-x 1 root root 457772 Apr 28 09:02 ./clients/tools/ldapsearch and -rwxr-xr-x 1 root root 1023664 Apr 28 09:27 /usr/local/bin/ldapsearch
Well, sizes always can differ because during 'make install' the tool strip is used (if not specified otherwise). But the size of the installed programs should be *smaller* than the one in the source directory.
What changed in make install between 2.3.32 and 2.3.39 and how to fix this?
Are you sure that you did the *very* same build? I vaguely remember I had to fix various env vars and linker options when building on Solaris.
Ciao, Michael.
openldap-software@openldap.org