[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Openlap and BDB updates: update question





--On Saturday, February 07, 2004 6:10 PM +0100 Tony Earnshaw <tonye@billy.demon.nl> wrote:

lør, 07.02.2004 kl. 03.02 skrev Quanah Gibson-Mount:

Sorry, Ace, I have to disagree.  This is a build environment issue, and
has  nothing to do with OpenLDAP in and of itself.  My 2.2.x binaries
build with

I wish that people would stop CC'ing me. Chances (unless they have a well-lubricated crystal ball) are that if they do, the CC will never make it, anyway.

well... my mail client is annoying that way sometimes.. I try to keep the CC's relevant. ;)


You are always willing to help, so I won't comment on your failure to
state details of system, etc (yes, I know it's Solaris X, but
*nevertheless* - others might not).

Well, actually, I build a lot on linux these days as well. And my linux build of BDB correctly created .so files as well. ;) Really, when it comes to straight building of most unix software on linux and solaris, if you keep your builds consistent, you should see consistent results. Which is why I kept this general.


BDB as a shared library without problem.

O.k. You have BDB .so libraries, congratulations ;)

Please give details of your options to ./configure.

%id=$Id %location=/usr/local/stow/db

%patch
lockfix
lockfix2

%configure
mkdir build
cd build && CC=/usr/pubsw/bin/gcc CXX=/usr/pubsw/bin/g++ CFLAGS='-O2' CXXFLAGS='-O2' LDFLAGS='-L/usr
/local/lib -R/usr/local/lib -lresolv' LD_RUN_PATH=/usr/local/lib sh ../dist/configure --datadir='${p
refix}/lib' --libexecdir='${prefix}/lib' --sharedstatedir='${prefix}/lib' LD_RUN_PATH=/usr/local/lib
\
--prefix=/usr/local \
--enable-compat185 \


%build
cd build && make

%install
cd build && make install prefix=%location%-%version%

%distclean/*
rm -r build/`sys`



libdb-4.2.so => /usr/local/lib/libdb-4.2.so

Why is this here? Mine is in /usr/local/BerkeleyDB.4.2/lib. Why did you feel it necessary to change the location? (Yes, I've now made DSOs work for Openldap 2.2.5, so this is not a complaint; I just need to know "why"?)

It actually isn't -- It is in /usr/local/stow/db-4.1.52.2/lib/. Search for a product called "stow", it is very handy for building versioned software, that makes the installation/deinstallation of new versions of software very simple -- I can switch between old and new builds without deleting either in about 5 seconds.


The rest of your ldd output I understand, including the specific Solaris
links - *which* Linux does not have - I *do* know why it does not. Many
Linux people on this list do *not* know - why should you assume that
they should?

Well, the main point of my ldd output was to note the use of the BDB shared library. ;) I was assuming they would not care about the rest of the output. ;)


I could post all my system details, but when it comes straight down to BDB, which does not require any other packages to link against, it is kind of pointless. Also, since I do cross-platform compiles, it would be very tedious to put in the details for each operating system. The real bottom line is, that you should have consistent compiles across OS's, if you make sure you work in a consistent environment.

Now, I will grant that I'm fortunate enough to have a tool we developed here at Stanford called "wrap" that allows me to have a build file for a particular software product that can do OS specific changes if necessary. ;) The above file about my configuration files is an example of a "wrap" file.


When I am posting specific questions/answers about OpenLDAP, I often do include the various versions of software I have installed, and the specific OS I'm dealing with, precisely because it becomes very relevant at that point.


--Quanah

--
Quanah Gibson-Mount
Principal Software Developer
ITSS/TSS/Computing Systems
ITSS/TSS/Infrastructure Operations
Stanford University
GnuPG Public Key: http://www.stanford.edu/~quanah/pgp.html