jvdmr / mod_evasive

Apache mod_evasive module
GNU General Public License v2.0
15 stars 9 forks source link

Cannot load /usr/lib64/httpd/modules/mod_evasive.so undefined symbol: pcre2_get_error_message_8 #21

Closed haid0cdracu closed 4 months ago

haid0cdracu commented 3 years ago

Hi,

I'm trying to install your mod_evasive:

[root@vwzope4 mod_evasive-2.2.0]# httpd -V Server version: Apache/2.4.6 (Red Hat Enterprise Linux) Server built: Oct 8 2020 21:27:40 Server's Module Magic Number: 20120211:24 Server loaded: APR 1.4.8, APR-UTIL 1.5.2 Compiled using: APR 1.4.8, APR-UTIL 1.5.2 Architecture: 64-bit Server MPM: event threaded: yes (fixed thread count) forked: yes (variable process count) Server compiled with.... -D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled) -D APR_USE_SYSVSEM_SERIALIZE -D APR_USE_PTHREAD_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D DYNAMIC_MODULE_LIMIT=256 -D HTTPD_ROOT="/etc/httpd" -D SUEXEC_BIN="/usr/sbin/suexec" -D DEFAULT_PIDLOG="/run/httpd/httpd.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_ERRORLOG="logs/error_log" -D AP_TYPES_CONFIG_FILE="conf/mime.types" -D SERVER_CONFIG_FILE="conf/httpd.conf"

using /usr/bin/apxs -i -a -c mod_evasive.c

On restart I got the above error.

yum install pcre2 pcre2-devel pcre2-tools is done:

[root@vwzope4 mod_evasive-2.2.0]# pcre2test -C PCRE2 version 10.23 2017-02-14 Compiled with 8-bit support 16-bit support 32-bit support UTF and UCP support (Unicode version 8.0.0) Just-in-time compiler support: x86 64bit (little endian + unaligned) Newline sequence is LF \R matches CR, LF, or CRLF only \C is supported Internal link size = 2 Parentheses nest limit = 250 Default match limit = 10000000 Default recursion depth limit = 10000000 Match recursion uses stack

Do you have any idea? Thanks a lot!

legendinis commented 2 years ago

use command provided below. Did find it in Dockerfile file.

/usr/bin/apxs -i -a -c -l pcre2-8 mod_evasive.c && apache2ctl configtest

jvdmr commented 4 months ago

As mentioned above, you need to tell apxs to load the pcre2-8 library before compiling, using the -l pcre2-8 option. Hope that helped!