Problem Compiling Plugins


#1

Hello,

I’m new to Nagios and have been working on getting it installed on Solaris 10. I’ve gotten as far as Installing the plugins version 1.4.2 and have hit a snag. It appears I can successfully run the ./configure parameters, although I am unable to compile the plugins using “make”. Below is a print out of my error. Seems to be centralized around the"check_dhcp.c" plugin although I don’t know what steps to take.

Thanks for any help you can offer.

make all-recursive
make[1]: Entering directory /export/home/joop/nagios-plugins-1.4.2' Making all in intl make[2]: Entering directory/export/home/joop/nagios-plugins-1.4.2/intl’
make[2]: Nothing to be done for all'. make[2]: Leaving directory/export/home/joop/nagios-plugins-1.4.2/intl’
Making all in lib
make[2]: Entering directory /export/home/joop/nagios-plugins-1.4.2/lib' make all-am make[3]: Entering directory/export/home/joop/nagios-plugins-1.4.2/lib’
make[3]: Nothing to be done for all-am'. make[3]: Leaving directory/export/home/joop/nagios-plugins-1.4.2/lib’
make[2]: Leaving directory /export/home/joop/nagios-plugins-1.4.2/lib' Making all in plugins make[2]: Entering directory/export/home/joop/nagios-plugins-1.4.2/plugins’
source=‘check_dhcp.c’ object=‘check_dhcp.o’ libtool=no
depfile=’.deps/check_dhcp.Po’ tmpdepfile=’.deps/check_dhcp.TPo’
depmode=none /bin/bash …/depcomp
cc -DLOCALEDIR="/usr/local/nagios/share/locale" -DHAVE_CONFIG_H -I. -I. -I… -I… -I…/lib -I…/intl -g -c check_dhcp.c
"check_dhcp.c", line 130: syntax error before or at: u_int8_t
"check_dhcp.c", line 151: syntax error before or at: u_int32_t
"check_dhcp.c", line 197: warning: old-style declaration or incorrect type for: u_int32_t
"check_dhcp.c", line 197: syntax error before or at: packet_xid
"check_dhcp.c", line 197: warning: old-style declaration or incorrect type for: packet_xid
"check_dhcp.c", line 199: warning: old-style declaration or incorrect type for: u_int32_t
"check_dhcp.c", line 199: syntax error before or at: dhcp_lease_time
"check_dhcp.c", line 199: warning: old-style declaration or incorrect type for: dhcp_lease_time
"check_dhcp.c", line 200: warning: old-style declaration or incorrect type for: u_int32_t
"check_dhcp.c", line 200: syntax error before or at: dhcp_renewal_time
"check_dhcp.c", line 200: warning: old-style declaration or incorrect type for: dhcp_renewal_time
"check_dhcp.c", line 201: warning: old-style declaration or incorrect type for: u_int32_t
"check_dhcp.c", line 201: syntax error before or at: dhcp_rebinding_time
"check_dhcp.c", line 201: warning: old-style declaration or incorrect type for: dhcp_rebinding_time
"check_dhcp.c", line 404: undefined struct/union member: op
"check_dhcp.c", line 407: undefined struct/union member: htype
"check_dhcp.c", line 410: undefined struct/union member: hlen
"check_dhcp.c", line 412: undefined struct/union member: hops
"check_dhcp.c", line 417: undefined struct/union member: xid
"check_dhcp.c", line 421: improper member use: xid
"check_dhcp.c", line 424: undefined struct/union member: secs
"check_dhcp.c", line 427: improper member use: flags
"check_dhcp.c", line 459: improper member use: xid
"check_dhcp.c", line 459: improper member use: xid
"check_dhcp.c", line 522: undefined struct/union member: xid
"check_dhcp.c", line 522: improper member use: xid
"check_dhcp.c", line 526: undefined struct/union member: xid
"check_dhcp.c", line 528: improper member use: xid
"check_dhcp.c", line 649: warning: statement not reached
"check_dhcp.c", line 813: improper member use: server_address
"check_dhcp.c", line 814: improper member use: offered_address
"check_dhcp.c", line 815: undefined struct/union member: lease_time
"check_dhcp.c", line 816: undefined struct/union member: renewal_time
"check_dhcp.c", line 817: undefined struct/union member: rebinding_time
"check_dhcp.c", line 821: improper member use: server_address
"check_dhcp.c", line 822: improper member use: offered_address
"check_dhcp.c", line 866: syntax error before or at: max_lease_time
"check_dhcp.c", line 879: undefined struct/union member: lease_time
"check_dhcp.c", line 879: undefined symbol: max_lease_time
"check_dhcp.c", line 879: improper member use: lease_time
"check_dhcp.c", line 880: improper member use: lease_time
"check_dhcp.c", line 883: improper member use: offered_address
"check_dhcp.c", line 887: improper member use: server_address
"check_dhcp.c", line 889: improper member use: server_address
"check_dhcp.c", line 905: undefined struct/union member: lease_time
"check_dhcp.c", line 905: undefined symbol: max_lease_time
"check_dhcp.c", line 905: improper member use: lease_time
"check_dhcp.c", line 906: improper member use: lease_time
"check_dhcp.c", line 909: improper member use: offered_address
"check_dhcp.c", line 942: undefined symbol: max_lease_time
"check_dhcp.c", line 950: cannot recover from previous errors
cc: acomp failed for check_dhcp.c
make[2]: *** [check_dhcp.o] Error 2
make[2]: Leaving directory /export/home/joop/nagios-plugins-1.4.2/plugins' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory/export/home/joop/nagios-plugins-1.4.2’
make: *** [all] Error 2


#2

looks like some dhcp package missing or not linked…
on solaris 8 one neede to add a -lns switch while compiling… (i seem to tremeber it was for the main program not the plugins) possibly this could help but i’m not quite sure…
anyway a search on the forum should bring some results about that solaris 8 compiling problem… not working on solaris anymore i forgot that point.

Hope it helps, Luca


#3

Thanks Luca. I’m running Solaris 10, but will look into adding the -lns switch you suggested and search the forum for more info.

Joop