Cannot install syslog-ng 3.2.4 under cygwin with Oracle support
Hi all, Prior to installing syslog-ng on cygwin, i installed libdbi and libdbi-drivers with oracle instant client on windows. After that, i installed eventlog Finally i tried to install syslog-ng and it failed. Here is my configure: ./configure EVTLOG_CFLAGS="-I/usr/local/eventlog/include/eventlog" \
EVTLOG_LIBS="-L/usr/local/eventlog/lib -levtlog" \ GLIB_CFLAGS="-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include" \ GLIB_LIBS="-L/usr/lib -lglib-2.0 -lintl" \ LIBDBI_CFLAGS="-I/usr/local/libdbi/include/dbi-0.8" \ LIBDBI_LIBS="-L/usr/local/libdbi/lib" \ --enable-sql
I've got this warning: *** Warning: This system can not link to static lib archive /usr/local/eventlog/lib/libevtlog.la. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have. *** Warning: linker path does not have real file for library -lrt. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have *** because I did check the linker path looking for a file starting *** with librt and none of the candidates passed a file format test *** using a file magic. Last file checked: /lib/librt.a *** Warning: linker path does not have real file for library -lresolv. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have *** because I did check the linker path looking for a file starting *** with libresolv and none of the candidates passed a file format test *** using a file magic. Last file checked: /lib/libresolv.a *** Warning: linker path does not have real file for library -ldl. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have *** because I did check the linker path looking for a file starting *** with libdl and none of the candidates passed a file format test *** using a file magic. Last file checked: /lib/libdl.a *** The inter-library dependencies that have been dropped here will be *** automatically added whenever a program is linked with this library *** or is declared to -dlopen it. *** Since this library must not contain undefined symbols, *** because either the platform does not support them or *** it was explicitly requested with -no-undefined, *** libtool will only create a static version of it. And this error ../../lib/.libs/libsyslog-ng.a(plugin.o): In function `plugin_load_module': /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:154: undefined reference to `_g_module_symbol' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:172: undefined reference to `_g_module_build_path' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:206: undefined reference to `_g_module_open' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:217: undefined reference to `_g_module_make_resident' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:219: undefined reference to `_g_module_symbol' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:221: undefined reference to `_g_module_error' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:210: undefined reference to `_g_module_error' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:146: undefined reference to `_g_module_open' collect2: ld returned 1 exit status make[5]: *** [pdbtool.exe] Error 1 make[5]: Leaving directory `/cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/modules/dbparser' make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory `/cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/modules/dbparser' make[3]: *** [all] Error 2 make[3]: Leaving directory `/cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/modules/dbparser' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/modules' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4' make: *** [all] Error 2 What do I miss? Thanks in advance.
On Fri, 2011-10-21 at 08:25 +0300, Hery Fanomezantsoa wrote:
Hi all, Prior to installing syslog-ng on cygwin, i installed libdbi and libdbi-drivers with oracle instant client on windows. After that, i installed eventlog Finally i tried to install syslog-ng and it failed. Here is my configure:
./configure EVTLOG_CFLAGS="-I/usr/local/eventlog/include/eventlog" \
EVTLOG_LIBS="-L/usr/local/eventlog/lib -levtlog" \ GLIB_CFLAGS="-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include" \ GLIB_LIBS="-L/usr/lib -lglib-2.0 -lintl" \ LIBDBI_CFLAGS="-I/usr/local/libdbi/include/dbi-0.8" \ LIBDBI_LIBS="-L/usr/local/libdbi/lib" \ --enable-sql
I have my doubts if a cygwin binary can access the native (non-cygwin) Oracle libraries easily.
I've got this warning:
*** Warning: This system can not link to static lib archive /usr/local/eventlog/lib/libevtlog.la. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have.
*** Warning: linker path does not have real file for library -lrt. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have *** because I did check the linker path looking for a file starting *** with librt and none of the candidates passed a file format test *** using a file magic. Last file checked: /lib/librt.a
*** Warning: linker path does not have real file for library -lresolv. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have *** because I did check the linker path looking for a file starting *** with libresolv and none of the candidates passed a file format test *** using a file magic. Last file checked: /lib/libresolv.a
*** Warning: linker path does not have real file for library -ldl. *** I have the capability to make that library automatically link in when *** you link to this library. But I can only do this if you have a *** shared version of the library, which you do not appear to have *** because I did check the linker path looking for a file starting *** with libdl and none of the candidates passed a file format test *** using a file magic. Last file checked: /lib/libdl.a *** The inter-library dependencies that have been dropped here will be *** automatically added whenever a program is linked with this library *** or is declared to -dlopen it.
*** Since this library must not contain undefined symbols, *** because either the platform does not support them or *** it was explicitly requested with -no-undefined, *** libtool will only create a static version of it.
And this error
../../lib/.libs/libsyslog-ng.a(plugin.o): In function `plugin_load_module': /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:154: undefined reference to `_g_module_symbol' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:172: undefined reference to `_g_module_build_path' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:206: undefined reference to `_g_module_open' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:217: undefined reference to `_g_module_make_resident' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:219: undefined reference to `_g_module_symbol' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:221: undefined reference to `_g_module_error' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:210: undefined reference to `_g_module_error' /cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/lib/plugin.c:146: undefined reference to `_g_module_open' collect2: ld returned 1 exit status make[5]: *** [pdbtool.exe] Error 1 make[5]: Leaving directory `/cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/modules/dbparser' make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory `/cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/modules/dbparser' make[3]: *** [all] Error 2 make[3]: Leaving directory `/cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/modules/dbparser' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4/modules' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/cygdrive/q/STAGE2011/Soft/syslog-ng-3.2.4' make: *** [all] Error 2
What do I miss?
I'm not that versed in cygwin specifics, but as it seems your dependant libraries are only available in static form. IIRC Corinna (the syslog-ng maintainer on cygwin) mentioned something about a libtool version that has problems on cygwin. You might need to regenerate the configure/Makefile/libtool scripts using the cygwin supplied tools. I know that syslog-ng could successfully be compiled on cygwin, and I think that libdbi core could probably too. But compiling libdbi-drivers/oracle will not be easy. This might help though: http://www.cygwin.com/cygwin-ug-net/dll.html -- Bazsi
Thanks for your help. But now I installed syslog-ng-3.2.4 from source on Debian Lenny and when I start syslog-ng with /usr/local/syslog-ng/sbin/syslog-ng it shows me this error: Error creating persistent state file; filename='/usr/local/syslog-ng/var/syslog-ng.persist-', error='No such file or directory (2)' Can someone help me please?
On Wed, 2011-10-26 at 07:49 +0300, Hery Fanomezantsoa wrote:
Thanks for your help. But now I installed syslog-ng-3.2.4 from source on Debian Lenny and when I start syslog-ng with /usr/local/syslog-ng/sbin/syslog-ng it shows me this error: Error creating persistent state file; filename='/usr/local/syslog-ng/var/syslog-ng.persist-', error='No such file or directory (2)' Can someone help me please?
mkdir /usr/local/syslog-ng/var it probably should be added to the Makefiles to create this directory. I've committed a patch to do this here: commit fec9c35c155a6c22da68c93de7fbee350c0c5d1a Author: Balazs Scheidler <bazsi@balabit.hu> Date: Wed Oct 26 15:55:38 2011 +0200 syslog-ng/Makefile.am: create $(localstatedir) automatically at install time Reported-By: Hery Fanomezantsoa <rhfano@gmail.com> Signed-off-by: Balazs Scheidler <bazsi@balabit.hu> -- Bazsi
participants (2)
-
Balazs Scheidler
-
Hery Fanomezantsoa