owasp-modsecurity / owasp-modsecurity/ModSecurity

An error occurred when compiling and installing modsecurity

Open
#3,242 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

3.x
Dominant language
C++
Stars
9.8k
Forks
1.8k
Avg merge
2h 46m
Merged PRs (30d)
1

Description

I installed modsecurity on centos7, operating system version 3.10.0-1160.105.1.el7.x86_64. At the beginning of my operating system gcc version is gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44), there is no problem when installing modsecurity at this time. Since I needed to install opencv, I later upgraded the gcc version and the updated gcc version is gcc (GCC) 9.3.0
An exception occurred when I installed modsecurity on the server after upgrading the gcc version.
There is always an error in the make compilation, I have seen on the official website, I have installed the required dependencies, but the error is still reported, the error log is as follows.

Making all in others
Make [1] : enter the directory "/ usr/local/modsecurity/others"
make[1]: You don't have to do anything with "all".
Make [1] : leave the directory "/ usr/local/modsecurity/others"
Making all in src
Make [1] : enter the directory "/ usr/local/modsecurity/SRC"
make  all-recursive
Make [2] : enter the directory "/ usr/local/modsecurity/SRC"
Make [3] : enter the directory "/ usr/local/modsecurity/SRC"
Make [3] : leave the directory "/ usr/local/modsecurity/SRC"
Make [2] : leave the directory "/ usr/local/modsecurity/SRC"
Make [1] : leave the directory "/ usr/local/modsecurity/SRC"
Making all in doc
Make [1] : enter the directory "/ usr/local/modsecurity/doc"
make[1]: You don't have to do anything with "all".
Make [1] : leave the directory "/ usr/local/modsecurity/doc"
Making all in tools
Make [1] : enter the directory "/ usr/local/modsecurity/tools"
Making all in rules-check
Make [2] : enter the directory "/ usr/local/modsecurity/tools/rules - check"
/bin/sh .. /.. /libtool  --tag=CXX   --mode=link g++  -g -O2 -L/usr/lib64/  -lpcre -L/usr/lib64/ -L/usr/lib64/ -L/usr/lib64/  -lpcre -o  modsec-rules-check modsec_rules_check-rules-check.o .. /.. . / SRC/libs/libmodsecurity. La - lGeoIP - LRT - lxml2 - lz - lm - LDL - LLMDB - llua - 5.1 - lpcre lpcre -- lfuzzy
libtool: link: g++ -g -O2 -o .libs/modsec-rules-check modsec_rules_check-rules-check.o  -L/usr/lib64/ .. /.. /src/.libs/libmodsecurity.so /usr/lib/.. /lib64/libstdc++. so-lGeoIP-lrt-lxml2-lz-lm-ldl-llmdb-llua-5.1-lpcre-lfuzzy-Wl,-rpath -Wl,/usr/local/modsecurity/lib -Wl,-rpath -Wl,/usr/lib/.. /lib64
.. /.. /src/.libs/libmodsecurity.so: undefined reference to `curl_easy_perform'
.. /.. /src/.libs/libmodsecurity.so: undefined reference to `curl_easy_init'
.. /.. /src/.libs/libmodsecurity.so: undefined reference to `curl_easy_strerror'
.. /.. /src/.libs/libmodsecurity.so: undefined reference to `curl_slist_append'
.. /.. /src/.libs/libmodsecurity.so: undefined reference to `curl_easy_cleanup'
.. /.. /src/.libs/libmodsecurity.so: undefined reference to `curl_slist_free_all'
.. /.. /src/.libs/libmodsecurity.so: undefined reference to `curl_easy_setopt'
.. /.. /src/.libs/libmodsecurity.so: undefined reference to `curl_global_init'
.. /.. /src/.libs/libmodsecurity.so: undefined reference to `curl_global_cleanup'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:542: modsec-rules-check] Error 1
Make [2] : leave the directory "/ usr/local/modsecurity/tools/rules - check"
make[1]: *** [Makefile:474: all-recursive] Error 1
Make [1] : leave the directory "/ usr/local/modsecurity/tools"
make: *** [Makefile:1015: all-recursive] Error 1

What is my problem? How can I solve it? Who can help me?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the tools/rules-check build shown in the Makefile output and inspect how src/.libs/libmodsecurity.so is linked during the GCC 9.3.0 build on CentOS 7. Reproduce the failure with the reported make command and dependencies, then confirm that the installation completes without the listed curl linker errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
centos
Domain
build-system, operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.