Compilation problem with recent CVS.

Stanley Hopcroft Stanley.Hopcroft at IPAustralia.gov.au
Wed May 25 07:28:21 CEST 2005


Dear Folks,

I am writing to forward a potential problem compiling a recent CVS.

'
I've been having a few minor problems in the last few weeks with the
embedded perl in Nagios compiled in.  This is with -CVS.  
 
1. Firstly, I'm seeing compile warnings on a fair few lines, like this:
 
cd ./base && make
make[1]: Entering directory `/usr/src/nagios/nagios/base'
gcc -g -O2 -I/usr/include  -D_REENTRANT -D_GNU_SOURCE -DDEBUGGING
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm
-I/usr/lib/perl5/5.8.6/i386-linux-thread-multi/CORE  -DHAVE_CONFIG_H
-DNSCORE -c -o broker.o broker.c
In file included from broker.c:26:
../include/config.h:24:1: warning: "_REENTRANT" redefined 
<command line>:1:1: warning: this is the location of the previous 
definition
gcc -g -O2 -I/usr/include  -D_REENTRANT -D_GNU_SOURCE -DDEBUGGING
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm
-I/usr/lib/perl5/5.8.6/i386-linux-thread-multi/CORE  -DHAVE_CONFIG_H
-DNSCORE -c -o nebmods.o nebmods.c
In file included from nebmods.c:26:
../include/config.h:24:1: warning: "_REENTRANT" redefined
<command line>:1:1: warning: this is the location of the previous 
definition
gcc -g -O2 -I/usr/include  -D_REENTRANT -D_GNU_SOURCE -DDEBUGGING
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm
-I/usr/lib/perl5/5.8.6/i386-linux-thread-multi/CORE  -DHAVE_CONFIG_H
-DNSCORE -c -o checks.o checks.c
 
(more of those messages about 'REENTRANT', but listed that much only for
brevity)
 
System is a Fedora Core 4 (devel) system, with gcc-4 and friends.

'

the file included from nebmods.c:26:
 
is

../include/config.h:24:1:

which 

#includes epn_nagios.h

that doesn't define _REENTRANT.

Despite the remarks being prefixed with 'embedded Perl', I don't get 
this result with gcc 2 or (I think) gcc 3 (there are other problems with 
gcc 3 on FreeBSD ePN ==> see later post).

Could this be a problem elsewhere ?

../include/epn_nagios.h includes perl.h but this doesn't appear to 
define _REENTRANT only check if it's set

tsitc> grep -i reentrant  /usr/local/lib/perl5/5.8.5/mach/CORE/perl.h
/* Use the reentrant APIs like localtime_r and getpwent_r */
#if defined(USE_ITHREADS) && !defined(USE_REENTRANT_API) && 
!defined(NETWARE) && !defined(WIN32) && !defined(PERL_DARWIN)
#   define USE_REENTRANT_API
#if defined(USE_REENTRANT) || defined(_REENTRANT) || 
defined(_THREAD_SAFE)
tsitc> 

This system has a threaded Perl.


I have Cc'd the original poster in case more details are required.

Yours sincerely.

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: disclaimer.txt
URL: <https://www.monitoring-lists.org/archive/developers/attachments/20050525/5d5b9be4/attachment.txt>


More information about the Developers mailing list