error when execute make all from "Make and Install Nagios NRPE"

Support forum for Nagios Core, Nagios Plugins, NCPA, NRPE, NSCA, NDOUtils and more. Engage with the community of users including those using the open source solutions.
Post Reply
juairy15
Posts: 1
Joined: Thu May 23, 2024 3:23 am

error when execute make all from "Make and Install Nagios NRPE"

Post by juairy15 »

Hi, I get an issue when I try to install nrpe service. I am following the instructions from (https://access.redhat.com/documentation ... eph-nagios)
we are red hat 9

error:
[root@su0960 nrpe-3.1.0]# make all
cd ./src/; make
make[1]: Entering directory '/root/nrpe-3.1.0/src'
gcc -g -O2 -DHAVE_CONFIG_H -I ../include -I ./../include -o nrpe ./nrpe.c ./utils.c ./acl.c -lssl -lcrypto
./nrpe.c: In function ‘init_ssl’:
./nrpe.c:418:22: warning: implicit declaration of function ‘get_dh2048’ [-Wimplicit-function-declaration]
418 | dh = get_dh2048();
| ^~~~~~~~~~
./nrpe.c:418:20: warning: assignment to ‘DH *’ {aka ‘struct dh_st *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
418 | dh = get_dh2048();
| ^
./nrpe.c:420:17: warning: ‘DH_free’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
420 | DH_free(dh);
| ^~~~~~~
In file included from /usr/include/openssl/dsa.h:51,
from /usr/include/openssl/x509.h:37,
from /usr/include/openssl/ssl.h:31,
from ../include/common.h:29,
from ./nrpe.c:28:
/usr/include/openssl/dh.h:204:28: note: declared here
204 | OSSL_DEPRECATEDIN_3_0 void DH_free(DH *dh);
| ^~~~~~~
./nrpe.c: In function ‘handle_conn_ssl’:
./nrpe.c:1871:25: warning: ‘ERR_get_error_line_data’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
1871 | while ((x = ERR_get_error_line_data(NULL, NULL, NULL, NULL)) != 0) {
| ^~~~~
In file included from ../include/common.h:31,
from ./nrpe.c:28:
/usr/include/openssl/err.h:425:15: note: declared here
425 | unsigned long ERR_get_error_line_data(const char **file, int *line,
| ^~~~~~~~~~~~~~~~~~~~~~~
./acl.c: In function ‘add_ipv4_to_acl’:
./acl.c:144:25: warning: implicit declaration of function ‘logit’ [-Wimplicit-function-declaration]
144 | logit(LOG_INFO, "add_ipv4_to_acl: checking ip-address >%s<", ipv4);
| ^~~~~
./acl.c: In function ‘is_an_allowed_host’:
./acl.c:563:46: warning: ‘__builtin_memcmp_eq’ specified bound 16 exceeds source size 8 [-Wstringop-overread]
563 | if (!memcmp(&addr6.sin6_addr, &host, sizeof(addr6.sin6_addr)))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./acl.c:488:42: note: source object declared here
488 | int is_an_allowed_host(int family, void *host)
| ~~~~~~^~~~
/usr/bin/ld: /tmp/ccVpMRNH.o: in function `init_ssl':
/root/nrpe-3.1.0/src/./nrpe.c:418: undefined reference to `get_dh2048'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:48: nrpe] Error 1
make[1]: Leaving directory '/root/nrpe-3.1.0/src'
make: *** [Makefile:66: all] Error 2


Can you help me to avoid this?
ssunga
Posts: 49
Joined: Wed Aug 09, 2023 10:38 am

Re: error when execute make all from "Make and Install Nagios NRPE"

Post by ssunga »

Hey @Juairy15, thanks for reaching out. It looks like there are problems with OpenSSL 3.0. Here are some things I'd try off the bat:

Check if you have an older version of OpenSSL available in your repositories or you can download it:

Code: Select all

sudo yum install openssl1.1-devel
And using this older version:

Code: Select all

export PKG_CONFIG_PATH=/usr/local/openssl1.1/lib/pkgconfig 
export LD_LIBRARY_PATH=/usr/local/openssl1.1/lib 
Then try make clean and make all to clean the previous build and try again.

There are also compatibility libraries you can try if that doesn't work:

Code: Select all

sudo yum install compat-openssl10-devel
Post Reply