Compile 3.0.1 on RHEL 5 with sql support
Hi, I'm new to syslog-ng and I'm trying to compile 3.0.1 on a RHEL 5.3 system. I want to use the log to PostgreSQL features so I'm trying to enable sql support. For this I've installed the libdbi packages: root@:~-# yum list '*libdbi*' Loaded plugins: rhnplugin, security Installed Packages libdbi.i386 0.8.1-2.1 installed libdbi.x86_64 0.8.1-2.1 installed libdbi-dbd-pgsql.x86_64 0.8.1a-1.2.2 installed libdbi-devel.i386 0.8.1-2.1 installed libdbi-devel.x86_64 0.8.1-2.1 installed libdbi-drivers.x86_64 0.8.1a-1.2.2 installed However, a configure gives: SQL support : no And a "./configure --enable-dynamic-linking --enable-sql" gives a /home/henk/syslog-ng-3.0.1/src/afsql.c:672: undefined reference to `dbi_initialize' in the make phase. Any ideas what or which lib I am missing? BTW: a configure without --enable-dynamic-linking gives a configure: error: static OpenSSL libraries not found (libssl.a and libcrypto.a) although I have those files both in /usr/lib and /usr/lib64 I have PKG_CONFIG_PATH=/usr/local/lib/pkgconfig, as is needed for eventlog. Regards, -- Henk van Lingen, (o- -+ Netwerk & Telefonie, ICT Service Center /\ | Jenalaan 18a, kamer 1.40 v_/_ http://henk.vanlingen.net/ http://www.tuxtown.net/netiquette/
On Thu, 2009-02-05 at 15:10 +0100, Henk van Lingen wrote:
Hi,
I'm new to syslog-ng and I'm trying to compile 3.0.1 on a RHEL 5.3 system. I want to use the log to PostgreSQL features so I'm trying to enable sql support. For this I've installed the libdbi packages:
root@:~-# yum list '*libdbi*' Loaded plugins: rhnplugin, security Installed Packages libdbi.i386 0.8.1-2.1 installed libdbi.x86_64 0.8.1-2.1 installed libdbi-dbd-pgsql.x86_64 0.8.1a-1.2.2 installed libdbi-devel.i386 0.8.1-2.1 installed libdbi-devel.x86_64 0.8.1-2.1 installed libdbi-drivers.x86_64 0.8.1a-1.2.2 installed
However, a configure gives:
SQL support : no
And a "./configure --enable-dynamic-linking --enable-sql" gives a
/home/henk/syslog-ng-3.0.1/src/afsql.c:672: undefined reference to `dbi_initialize'
in the make phase.
Any ideas what or which lib I am missing?
I contributed a patch to libdbi to have a pkg-config file and syslog-ng relies on the presence of dbi.pc in one of the PKG_CONFIG_PATH referenced directories. Please use a newer libdbi. An alternative might be to specify these environment variables to supply the same information: LIBDBI_CFLAGS C compiler flags for LIBDBI, overriding pkg-config LIBDBI_LIBS linker flags for LIBDBI, overriding pkg-config
BTW:
a configure without --enable-dynamic-linking gives a
configure: error: static OpenSSL libraries not found (libssl.a and libcrypto.a)
hmm... the related config.log snippet could help here. Maybe your libssl has an external dependency on some lib that syslog-ng does not specify explicitly. In syslog-ng OSE 2.1, I've made the switch to use dynamic linking by default but the OSE 3.0 still uses the 'hybrid linking'. I'll make a note of this and forward port the related patch.
although I have those files both in /usr/lib and /usr/lib64
I have PKG_CONFIG_PATH=/usr/local/lib/pkgconfig, as is needed for eventlog.
-- Bazsi
Hi there, I have exactly the same issue now, but on different platform (etch amd64). Balazs Scheidler a écrit :
On Thu, 2009-02-05 at 15:10 +0100, Henk van Lingen wrote:
Hi,
I'm new to syslog-ng and I'm trying to compile 3.0.1 on a RHEL 5.3 system. I want to use the log to PostgreSQL features so I'm trying to enable sql support. For this I've installed the libdbi packages:
root@:~-# yum list '*libdbi*' Loaded plugins: rhnplugin, security Installed Packages libdbi.i386 0.8.1-2.1 installed libdbi.x86_64 0.8.1-2.1 installed libdbi-dbd-pgsql.x86_64 0.8.1a-1.2.2 installed libdbi-devel.i386 0.8.1-2.1 installed libdbi-devel.x86_64 0.8.1-2.1 installed libdbi-drivers.x86_64 0.8.1a-1.2.2 installed
However, a configure gives:
SQL support : no
And a "./configure --enable-dynamic-linking --enable-sql" gives a
/home/henk/syslog-ng-3.0.1/src/afsql.c:672: undefined reference to `dbi_initialize'
in the make phase.
Any ideas what or which lib I am missing?
I contributed a patch to libdbi to have a pkg-config file and syslog-ng relies on the presence of dbi.pc in one of the PKG_CONFIG_PATH referenced directories.
deb-amd64:~# dpkg -l | grep libdbi ii libdbi-doc 0.8.2-3 DB Independent Abstraction Layer for C -- d ii libdbi0 0.8.2-3 Database Independent Abstraction Layer for C ii libdbi0-dev 0.8.2-3 DB Independent Abstraction Layer for C -- d With this version, no dbi.pc, I just compiled 0.8.3, no more luck. I don't get it, where are we supposed to find this file ?
Please use a newer libdbi. An alternative might be to specify these environment variables to supply the same information:
LIBDBI_CFLAGS C compiler flags for LIBDBI, overriding pkg-config LIBDBI_LIBS linker flags for LIBDBI, overriding pkg-config
BTW:
a configure without --enable-dynamic-linking gives a
configure: error: static OpenSSL libraries not found (libssl.a and libcrypto.a)
hmm... the related config.log snippet could help here. Maybe your libssl has an external dependency on some lib that syslog-ng does not specify explicitly.
In syslog-ng OSE 2.1, I've made the switch to use dynamic linking by default but the OSE 3.0 still uses the 'hybrid linking'. I'll make a note of this and forward port the related patch.
although I have those files both in /usr/lib and /usr/lib64
I have PKG_CONFIG_PATH=/usr/local/lib/pkgconfig, as is needed for eventlog.
Thank you for your time, Steven
On Mon, 2009-02-09 at 10:45 +0100, steven wrote:
Hi there,
I have exactly the same issue now, but on different platform (etch amd64).
Balazs Scheidler a écrit :
On Thu, 2009-02-05 at 15:10 +0100, Henk van Lingen wrote:
I contributed a patch to libdbi to have a pkg-config file and syslog-ng relies on the presence of dbi.pc in one of the PKG_CONFIG_PATH referenced directories.
deb-amd64:~# dpkg -l | grep libdbi ii libdbi-doc 0.8.2-3 DB Independent Abstraction Layer for C -- d ii libdbi0 0.8.2-3 Database Independent Abstraction Layer for C ii libdbi0-dev 0.8.2-3 DB Independent Abstraction Layer for C -- d
With this version, no dbi.pc, I just compiled 0.8.3, no more luck. I don't get it, where are we supposed to find this file ?
Well, well. You are right, even the libdbi package in Ubuntu intrepid does not contain this file. My patch was integrated into libdbi CVS at Wed Oct 22 22:36:18 2008 UTC. But as it seems no release has been made ever since. The LIBDBI_CFLAGS and LIBDBI_LIBS options should work though. Try: LIBDBI_CFLAGS=-I/usr/include LIBDBI_LIBS="-L/usr/lib -ldbi" ./configure This should work. Also I've added the following patch to recognize libdbi even if the .pc file is not installed. You can grab it from the git repository, or wait till tomorrow for the nightly snapshot. commit 6ca874d7ea362e4f0286245542f7ea601743c72d Author: Balazs Scheidler <bazsi@balabit.hu> Date: Mon Feb 9 11:44:09 2009 +0100 [configure] added kludge to recognize libdbi without an installed dbi.pc file libdbi does not always install a pkg-config file, work without one, assuming it was installed to the default location. -- Bazsi
participants (3)
-
Balazs Scheidler
-
Henk van Lingen
-
steven