• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1808
  • Last Modified:

Nagios Plugins ./configure errors

I'm getting the errors listed below on a few of our openSUSE 10 Linux servers -- typically ones with larger disk partitions - when I try to configure and make the nagios plugins (current version, 1.4.14).  I'm hoping I may just need some 32-bit libraries or such, but thought I'd ask the experts and see if you can point me towards a quick fix.

/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/bin/ld: warning: i386 architecture of input file `utils.o' is incompatible with i386:x86-64 output
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/bin/ld: warning: i386 architecture of input file `popen.o' is incompatible with i386:x86-64 output
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/bin/ld: warning: i386 architecture of input file `runcmd.o' is incompatible with i386:x86-64 output
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/bin/ld: warning: i386 architecture of input file `sslutils.o' is incompatible with i386:x86-64 output
/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/bin/ld: warning: i386 architecture of input file `netutils.o' is incompatible with i386:x86-64 output
sslutils.o: In function `np_net_ssl_check_cert':/root/downloads/nagios-plugins-1.4.14/plugins/sslutils.c:150: undefined reference to `rpl_timegm'
  • 5
  • 3
3 Solutions
nociSoftware EngineerCommented:
You hit the nail on the head.. 32 (i386) /64 (i386:x86_64) bit library mix.

Check the config.log on more info about the platform being used.
You may need to specify some option on the nagios-plugin  ./configure commandline.
On a 64-bit platform you would expect the compiler to generate 64bit code.

e_sandrsAuthor Commented:
Thanks for the start.  Sorry I didn't confess this in my original post, but our Linux Guru position is currently vacant, so we're stuck with a barely competent Linux newbie like me to keep the boat afloat until the position is filled.

Given that, any advice on how to fix?  I've attached the top of the config.log down to the first error and a extracted list of all the "error" lines in the log, if that helps.  If there's a different group that'd be better to ask at this point, just let me know and I'll change categories.

nociSoftware EngineerCommented:
Errors in the config.log are not necessarily errors in code and or environment.
the configure script tries to establish what kind of platform you are using and what is available on it.
So it tries to run some programs (uname -* to get info from the system) uses the compiler to compile all kinds of small C programs designed to test a single aspect of the environment like presence of working versions of some headers, libraries.
Depending on the requirement the library is needed or just optional it will become a fatal error for ./configure or just a warning.

See the output of the ./configure on your screen. The one you ended the head listing with is meant to check if there is a preprocessor working.
Using a nonexistent filename it can see if there is an certain error when things do or don't work.

Did you start out with a clean directory from a distribution .tar/.targz/.tgz file? or was it copied from a different system.
it seems off to me that 32bit objects exist...

cat you start from scratch? (.i.e.) delete the whole source tree for your plugins and untar a fresh one?
Network Scalability - Handle Complex Environments

Monitor your entire network from a single platform. Free 30 Day Trial Now!

e_sandrsAuthor Commented:
The previous administrator had a lot of "unique" ideas about system setup, so anything is possible.  I started this time from a (fairly) clean file set (just untared elsewhere and re-tared, IIRC), but I'll try a clean, from scratch run on this box and see what I get.

Duncan RoeSoftware DeveloperCommented:
Just "make clean" followed by "make" may fix it. If no joy, next step is "make distclean" followed by "./configure 2>&1 | tee hee" and post hee
If you think you departed colleague fiddled with input files, delete & re-install from scratch, then proceed as above. A real guru would have left some record of any non-standard options given to config - look for that before deleting anything.
e_sandrsAuthor Commented:
Lesson learned - using a clean untar from source files fixed my issues on almost all my servers.  My one remaining problem box is generating the SSL library error below during ./configure of the nrpe-2.12 plugin.

checking for SSL headers... SSL headers found in /usr/local/ssl
checking for SSL libraries... configure: error: Cannot find ssl libraries

When I look for libssl I only get this:

locate libssl

I tried putting in --with-ssl-lib=/usr/local/ssl/lib/ without improvement.  Odds are I've failed to install or config something I need for SSL (although the nagios-plugins configured with openssl=yes as-is).

I tried running the config with --disable-ssl, and that works, but then I cannot get information from remote servers - I get "CHECK_NRPE: Socket timeout after 10 seconds." (and I've tried longer timeouts with no improvement).

Now that I've dragged us in a fairly different direction, any suggestions on my final hurdle?  I'm thinking there may be something I could configure on the Nagios server to tell it to communicate non-SSL, but I'd prefer to get this box working like all the other Linux installs.
nociSoftware EngineerCommented:
Suse has it's openssl   + openssl develop packages.

Please use these. The /usr/lib  are appearantly from an openssl package from Suse. The /usr/local one most probably are from home brew...
https can only be use if you have openssl or gnutls installed. (depending on the support in the programs for either library).

First try to install the Suse rpms for development libraries like openssl.. and use /usr/lib as library.
e_sandrsAuthor Commented:
Thanks for babysitting me through this one.  It's crazy!  With the right packages installed and everything configured on the target machine, it all Just Works (Apple can sue me).

I still have 2 boxes to go back and fix, but I'm sure they're going to be fine now.
e_sandrsAuthor Commented:
Good advice and instructions all around to get me from my "broken"/misunderstood state to working.  Moral #1 to the story for me?  Make sure you untar and configure the source files on each target machine unless they are identical.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Improve Your Query Performance Tuning

In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

  • 5
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now