[Nagiosplug-help] Compiling in cygwin
Tom Loebach
loebach at yahoo.com
Tue Feb 1 09:40:19 CET 2005
Try running:
make check_nt.exe
This works for me in both 1.3.1 and 1.4-beta1.
--- Andreas Ericsson <ae at op5.se> wrote:
> Vanderveken, Jan wrote:
> >
> > I don't want to turn this into a discussion about
> the merits of Unix vs
> > Windows, if you don't mind, so let's please stick
> to the technical issue at
> > hand :)
> >
>
> Sorry about that. It seems I can never resist.
>
> >
> >>The nagios plugins lean heavily on certain system
> >>applications usually
> >>only found on unix systems. I don't think a cygwin
> port is currently
> >>planned and I seriously doubt if you will have any
> luck in
> >>making many
> >>of them run.
> >
> >
> > Cygwin provides just those system applications you
> speak about (or should
> > anyway). Anyway, I'm a bit surprised that it's so
> much trouble getting these
> > relatively simple plugins to compile, when big
> applications like Apache and
> > MySQL went smoothly.
> >
>
> Apache and MySQL bring all their own code. The
> plugins rely on other
> packages to exist (like header files from some form
> of kernel package,
> for instance). Apache and MySQL are also very mature
> and widespread
> projects where numerous competent coders have
> contributed clean code to
> make it compile cleanly with everything from gcc to
> a stick of wood.
>
> >
> >>check_icmp (as included in the dist) won't compile
> under
> >>CYGWIN unless
> >>you have BSD-compatible headers installed
> >
> >
> > I don't really need the check_icmp plugin. So that
> is ok.
> >
>
> I doubt the check_ping plugin will work properly
> either, but it should
> be interesting to see.
>
> >
> >>The best option you have is probably to run make
> -i (continue
> >>on errors)
> >>and take whatever plugins happen to build.
> >
> >
> > make -i does indeed build a lot of the plugins,
> but it does not build the
> > most critical I need, namely check_nt.
> >
> > It gave me these errors:
> > In file included from check_nt.c:38:
> > common.h:35:20: config.h: No such file or
> directory
>
> I suppose you ran ./configure successfully? Perhaps
> it's a typo issue in
> check_nt.c. Try downloading latest CVS.
>
> > In file included from check_nt.c:38:
> > common.h:146: error: parse error before "va_list"
>
> That's weird. va_list is C89, provided by stdarg.h
> and should be
> available on all platforms.
>
> > common.h:187:21: gettext.h: No such file or
> directory
> > In file included from check_nt.c:39:
> > netutils.h:35:20: config.h: No such file or
> directory
>
> More ./configure or typo issues.
>
> > In file included from check_nt.c:39:
> > netutils.h:39: error: parse error before
> "socket_timeout_alarm_handler"
> > netutils.h:39: warning: data definition has no
> type or storage class
> > In file included from check_nt.c:40:
> > utils.h:30: error: parse error before
> "timeout_alarm_handler"
> > utils.h:30: warning: data definition has no type
> or storage class
>
> It seems cygwin doesn't provide RETSIGTYPE. Since
> this is very
> platform-specific (Windows doesn't do signals the
> unix way), I doubt you
> will find a suitable solution.
>
> > utils.h:60: warning: `struct timezone' declared
> inside parameter list
> > utils.h:60: warning: its scope is only this
> definition or declaration, which
> > is
> > probably not what you want
>
> That's a bit weird. Try substituting struct timezone
> * for void * (it
> will give you new warnings about cast this and that,
> but if the function
> exists it should swallow it nicely and work as
> intended).
>
> > check_nt.c: In function `main':
> > check_nt.c:115: error: `LC_ALL' undeclared (first
> use in this function)
> > check_nt.c:115: error: (Each undeclared identifier
> is reported only once
> > check_nt.c:115: error: for each function it
> appears in.)
> > check_nt.c:116: error: `PACKAGE' undeclared (first
> use in this function)
> > check_nt.c:116: error: `LOCALEDIR' undeclared
> (first use in this function)
> > check_nt.c:120: warning: passing arg 1 of `usage4'
> makes pointer from
> > integer
> > without a cast
> >
> > I do have gettext installed in cygwin ... so it
> seems a little odd.
> >
>
> Try with --disable-nls. There aren't any dutch
> translations anyway, so
> you won't gain anything by compiling it in.
>
> If that doesn't work, try commenting out the
> offending code (with
> #ifndef CYGWIN and add -DCYGWIN to your CFLAGS
> variable). It is nls
> specific anyway, so it shouldn't bother you (and it
> should be commented
> out with --disable-nls).
>
> It's always nice to see a pioneer porting code to
> something obscure. ;)
>
> --
> Andreas Ericsson
> andreas.ericsson at op5.se
> OP5 AB www.op5.se
> Lead Developer
>
>
>
-------------------------------------------------------
> This SF.Net email is sponsored by: IntelliVIEW --
> Interactive Reporting
> Tool for open source databases. Create drag-&-drop
> reports. Save time
> by over 75%! Publish reports on the web. Export to
> DOC, XLS, RTF, etc.
> Download a FREE copy at
> http://www.intelliview.com/go/osdn_nl
> _______________________________________________
> Nagiosplug-help mailing list
> Nagiosplug-help at lists.sourceforge.net
>
https://lists.sourceforge.net/lists/listinfo/nagiosplug-help
> ::: Please include plugins version (-v) and OS when
> reporting any issue.
> ::: Messages without supporting info will risk being
> sent to /dev/null
>
__________________________________
Do you Yahoo!?
Read only the mail you want - Yahoo! Mail SpamGuard.
http://promotions.yahoo.com/new_mail
More information about the Help
mailing list