Re: [evlog-dev] plugin problem

Steve Woodruff <[email protected]> Wed, 15 Jan 2003 11:48:40 -0800 (PST)
Newsgroups gmane.linux.kernel.event-logging
Message-ID <[email protected]>
Hi Hien,

Actually, in your evlog-1.5.0.spec file, you
are hard-coding the 2.5.33 kernel version.  Can
it be changed to find the kernel version and then
invoke the make commands with the appropriate
kernel version?  The changes i made are:

%build
#make -C user PPC_K64_U32=no KERN_VERSION=v2.5.33
make -C user PPC_K64_U32=no KERN_VERSION=v2.4.18

%install
rm -rf $RPM_BUILD_ROOT
#make -C user DESTDIR=$RPM_BUILD_ROOT
KERN_VERSION=v2.5.33 install-package
#make -C kernel/test DESTDIR=$RPM_BUILD_ROOT
KERN_VERSION=v2.5.33 install
make -C user DESTDIR=$RPM_BUILD_ROOT
KERN_VERSION=v2.4.18 install-package
make -C kernel/test DESTDIR=$RPM_BUILD_ROOT
KERN_VERSION=v2.4.18 install

And it is during the compile invoked by the
spec file that the POSIX_LOG_PRINTF turns up
as undefined -- because its missing from the
v2.4.18/include/linux/evl_log.h file.

Adding the symbol to that file does allow the
compile to complete sucessfully.  However, when
an event is being logged, the error still occurs:

/sbin/evlogd: relocation error: /usr/lib/libevl.so.1:
undefined symbol: __umodsi3

So it doesn't seem that the lib/util kernver was
the problem.  Any other ideas?

Thanks!

/steve


--- Hien Nguyen <[email protected]> wrote:
> Hi Steve,
> 
> I think it should not matter which kernel version
> that you build evlog 
> wit. Since we only pick up the evl_log.h under
> kernelversion/include/linux
> 
> But you could try to add
> #define POSIX_LOG_PRINTF 3
> 
> onto the evl_log.h on kernel version 2.4.18
> 
> Also I recommend to use buildrpm.sh script to build
> the rpm.
> 
> Thanks, Hien.
> 
> Steve Woodruff wrote:
> > Hi Hien,
> > 
> > I now remember reading about the config file but
> > didn't recall earlier.  That solution is
> acceptable
> > for me -- thanks!
> > 
> > As for the plugin problem, maybe i have some
> clues.
> > I built the user space libs/utilities via a
> > "rpm -ba evlog-1.5.0.spec"  -- and that defaults
> > to using a KERN_VERSION=2.5.33 where as i should
> > be using 2.4.18.  I modified the spec to set the
> > appropriate kern version but then there is a
> > compile error!
> > 
> > cc -g  -D_EVL_WRITE_DIRECT -I../include
> > -I../../kernel/v2.4.18/include   -c -o syslogat.o
> > syslogat.c
> > syslogat.c: In function `_evl_syslogat':
> > syslogat.c:120: `POSIX_LOG_PRINTF' undeclared
> (first
> > use in this function)
> > syslogat.c:120: (Each undeclared identifier is
> > reported only once
> > syslogat.c:120: for each function it appears in.)
> > make[1]: *** [syslogat.o] Error 1
> > make[1]: Leaving directory
> > `/usr/src/redhat/BUILD/evlog-1.5.0/user/lib'
> > make: *** [user/lib] Error 2
> > make: Leaving directory
> > `/usr/src/redhat/BUILD/evlog-1.5.0/user'
> > 
> > ===
> > 
> > I did a diff between the 2.4.18 and 2.5.33 version
> > of evl_log.h and found that the POSIX_LOG_PRINTF
> > symbol seems only defined in the 2.5.33 version!
> > 
> > diff ../../kernel/v2.4.18/include/linux/evl_log.h
> > ../../kernel/v2.5.33/include/linux/evl_log.h
> > 
> > 3c3
> > <  * Copyright (c) International Business Machines
> > Corp., 2001
> > ---
> > 
> >> * Copyright (c) International Business Machines
> > 
> > Corp., 2002
> > 47a48
> > 
> >>#define POSIX_LOG_PRINTF    3
> > 
> > 191a193,194
> > 
> >>extern int evl_gen_event_type(const char *s1,
> const
> > 
> > char *s2, const char *s3);
> > 
> > 218a222,224
> > 
> >>              { return -ENOSYS; }
> >>
> >>inline int evl_gen_event_type(const char *s1,
> const
> > 
> > char *s2, const char *s3)
> > 
> > ===
> > 
> > Should the POSIX_LOG_PRINTF be defined in both?
> > That seems to be the source of this compile error.
> > 
> > Also, would using libs/utils compiled with
> KERN_VER
> > set to 2.5.33 on a 2.4.18 kernel cause the symbol
> > error i get at runtime?
> > 
> > Thanks,
> > 
> > /steve
> > 
> > 
> > --- Hien Nguyen <[email protected]> wrote:
> > 
> >>Steve,
> >>
> >>Do you know that now you could set the libc.so
> name
> >>in the 
> >>/etc/evlogd/libevlsyslog.conf
> >>
> >>Try
> >>
> >>echo libc.so.6.1 > /etc/evlog.d/libevlsyslog.conf
> >>
> >>I will look at the plugin problem asap. Did you
> try
> >>the plugins that we 
> >>include with evlog v1.5.0.
> >>
> >>Thanks, Hien.
> >>
> > 
> > 
> > 
> > 
> > =====
> >
>
----------------------------------------------------------
> >  Steve Woodruff, N9OH @ 42.18N 88.34W,
> [email protected]
> > 
> > __________________________________________________
> > Do you Yahoo!?
> > Yahoo! Mail Plus - Powerful. Affordable. Sign up
> now.
> > http://mailplus.yahoo.com
> > 
> > 
> >
>
-------------------------------------------------------
> > This SF.NET email is sponsored by: A Thawte Code
> Signing Certificate 
> > is essential in establishing user confidence by
> providing assurance of 
> > authenticity and code integrity. Download our Free
> Code Signing guide:
> >
>
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0028en
> > _______________________________________________
> > evlog-developers mailing list
> > [email protected]
> >
>
https://lists.sourceforge.net/lists/listinfo/evlog-developers
> > 
> 
> 


=====
----------------------------------------------------------
 Steve Woodruff, N9OH @ 42.18N 88.34W, [email protected]

__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com


-------------------------------------------------------
This SF.NET email is sponsored by: A Thawte Code Signing Certificate 
is essential in establishing user confidence by providing assurance of 
authenticity and code integrity. Download our Free Code Signing guide:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0028en