Building Ngx_cache_purge Module On CentOS Linux Release 7.9.2009 (Core).

Home » CentOS » Building Ngx_cache_purge Module On CentOS Linux Release 7.9.2009 (Core).
CentOS 5 Comments

Hi,

I am referring to https://github.com/FRiCKLE/ngx_cache_purge/ and running the open source nginx version: nginx/1.20.2 on CentOS Linux release
7.9.2009 (Core). When i trying to compile the ngx_cache_purge_module.c I am encountering fatal error: nginx.h: No such file or directory

# ls -l total 76
-rw-r–r– 1 501 wheel 1980 Dec 23 2014 CHANGES
-rw-r–r– 1 501 wheel 516 Dec 23 2014 config
-rw-r–r– 1 501 wheel 1424 Dec 23 2014 LICENSE
-rw-r–r– 1 501 wheel 51501 Dec 23 2014 ngx_cache_purge_module.c
-rw-r–r– 1 501 wheel 5090 Dec 23 2014 README.md drwxr-xr-x 2 501 wheel 80 May 7 02:22 t
-rw-r–r– 1 501 wheel 281 Dec 23 2014 TODO.md
#

#gcc -o ngx_cache_purge_module ngx_cache_purge_module.c ngx_cache_purge_module.c:30:19: fatal error: nginx.h: No such file or directory
#include
^
compilation terminated.

# yum search nginx-devel Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile
* base: uk.mirrors.clouvider.net
* CentOS-sclo-rh: uk.mirrors.clouvider.net
* epel: d2lzkl7pfhq30w.cloudfront.net
* extras: mirrors.vinters.com
* updates: mirrors.vinters.com Warning: No matches found for: nginx-devel No matches found
# rpm -qa | grep epel epel-release-7-14.noarch
# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core)
#

Please correct me if I am missing something. Thanks in advance.

Best Regards,

Kaushal

5 thoughts on - Building Ngx_cache_purge Module On CentOS Linux Release 7.9.2009 (Core).

  • Hi,

    I can only guess but I think there is no -devel package available. What I
    found is nginx-mod-devel and it includes the nginx.h file. Maybe you need this to compile.

    Regards, Simon

  • Hi Kaushal,

    Try “yum search nginx” instead and examine its output. You’ll find your answer.

    Regards, Anand

  • Hi,

    # rpm -qil nginx-mod-devel-1.20.1-9.el7.x86_64 | grep nginx.h
    /usr/src/nginx-1.20.1-9.el7/src/core/nginx.h
    # ll /usr/src/nginx-1.20.1-9.el7/src/core/nginx.h
    -rw-r–r– 1 root root 476 May 25 2021
    /usr/src/nginx-1.20.1-9.el7/src/core/nginx.h
    # ls CHANGES config LICENSE ngx_cache_purge_module.c README.md t TODO.md
    # ls -l total 76
    -rw-r–r– 1 501 wheel 1980 Dec 23 2014 CHANGES
    -rw-r–r– 1 501 wheel 516 Dec 23 2014 config
    -rw-r–r– 1 501 wheel 1424 Dec 23 2014 LICENSE
    -rw-r–r– 1 501 wheel 51501 Dec 23 2014 ngx_cache_purge_module.c
    -rw-r–r– 1 501 wheel 5090 Dec 23 2014 README.md drwxr-xr-x 2 501 wheel 80 May 7 02:22 t
    -rw-r–r– 1 501 wheel 281 Dec 23 2014 TODO.md
    #
    # gcc -o ngx_cache_purge_module ngx_cache_purge_module.c ngx_cache_purge_module.c:30:19: fatal error: nginx.h: No such file or directory
    #include
    ^
    compilation terminated.
    #

    It is unable to locate the header file. Please correct me if I am missing something. Thanks in advance.

    Best Regards,

    Kaushal

  • Hi,

    I have installed the below packages on CentOS Linux release 7.9.2009 (Core)

    # cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core)
    # nginx -v nginx version: nginx/1.20.1
    # rpm -qa | grep nginx nginx-1.20.1-9.el7.x86_64
    nginx-filesystem-1.20.1-9.el7.noarch rh-nginx120-scldevel-1.20-1.el7.x86_64
    nginx-mod-devel-1.20.1-9.el7.x86_64
    php74-fpm-nginx-7.4.29-1.el7.ius.noarch
    #

    Best Regards,

    Kaushal

  • Hi Kaushal,

    Yes, you’re missing basic knowledge on how to compile C programs. Look at the man page of “gcc” and figure out how to use the “-I” flag.

    Regards, Anand