[rrd-developers] Link issue with libdbi
Martin Sperl
rrdtool at martin.sperl.org
Sun Feb 6 16:43:53 CET 2011
Actually I am quite surprised that that you are:
a) link with the absolute path to link the so library and not use "-l rrd"
b) you need to explicitly linkt libdbi again, if your code is not using it.
As for how to detect:
ldd /us/lib/libdbirrd.so
should show you what libraries libdbi links against dynamically - at least on linux...
Martin
On 04.02.2011, at 00:26, Bernard Li wrote:
> Hi all:
>
> [sending back to rrd-developers]
>
> On Thu, Feb 3, 2011 at 1:24 PM, Tobias Oetiker <tobi at oetiker.ch> wrote:
>
>> if you have build rrdtool on a system with libdbi installed you may
>> have to link libdbi explicitly when compiling against librrd ...
>> to be safe, just disable libdbi support in configure since you are
>> most likely not going to use it anyway ...
>
> Thanks Tobi and Martin for their responses.
>
> I am just working with pre-built binary packages of rrdtool and I
> believe most of them have libdbi enabled. So it sounds like for
> Ganglia, I will need to add a check to see if librrd was linked with
> libdbi and if so, add -ldbi to the Ganglia Makefile.
>
> I still have a few queries:
>
> 1) On Ubuntu/Debian, librrd.so (provided by librrd-dev) links against
> libdbi.so.0 (provided by libdbi0) but librrd-dev does not actually
> require libdbi0-dev that provides libdbi.so -- is this a bug with the
> packaging of librrd-dev?
> 2) What's the best way for Ganglia to programmically check if the
> installed librrd.so is linked against libdbi and subsequently add
> -ldbi to its Makefile?
>
> For those who are interested in seeing the problem in action, the
> tarballs are here:
>
> http://therealms.org/oss/ganglia/techpreview/
>
> ganglia-3.2.0.2466.tar.gz was bootstrapped on RHEL5, and when built on
> Ubuntu complains about missing /usr/lib/libdbi.so (which is provided
> by libdbi0-dev)
> ganglia-3.2.0.2468.tar.gz was bootstrapped on Ubuntu and builds fine
> under Ubuntu without libdbi0-dev
>
> To build, run `./configure --with-gmetad` then do `make` -- it would
> error out while building gmetad.
>
> Thanks!
>
> Bernard
More information about the rrd-developers
mailing list