TransWikia.com

Compile error on nginx-auth-ldap with nginx

Server Fault Asked by Tuckson on December 9, 2021

I try to compile the ldap module with nginx on Centos7. However I am greeted with tons of compile errors.

The first few I got here:

cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /usr/include/libxml2 -I objs -I src/http -I src/http/modules -I src/http/v2 
        -o objs/src/http/modules/ngx_http_stub_status_module.o 
        src/http/modules/ngx_http_stub_status_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g   -I src/core -I src/event -I src/event/modules -I src/os/unix -I /usr/include/libxml2 -I objs -I src/http -I src/http/modules -I src/http/v2 -I src/mail -I src/stream 
        -o objs/addon/ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.o 
        ./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c
./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:6:1: error: expected identifier or ‘(’ before ‘<’ token
 <!DOCTYPE html>
 ^
./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:31:3: error: stray ‘302’ in program
   <title>nginx-auth-ldap/ngx_http_auth_ldap_module.c at master · kvspb/nginx-auth-ldap · GitHub</title>
   ^
./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:31:3: error: stray ‘267’ in program
./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:31:3: error: stray ‘302’ in program
./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:31:3: error: stray ‘267’ in program
./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:148:15: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘<’ token
               </a>
               ^
./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:174:267: error: expected identifier or ‘(’ before ‘<’ token
                     <a href="/features" class="py-2 lh-condensed-ultra d-block link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Features">Features <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a>
                                                                                                                                                                                                                                                                           ^
./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:187:332: error: expected identifier or ‘(’ before ‘<’ token
                       <li class="edge-item-fix"><a href="/customer-stories" class="py-2 lh-condensed-ultra d-block no-underline link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Customer stories">Customer stories <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a></li>
                                                                                                                                                                                                                                                                                                                                            ^
./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:188:308: error: expected identifier or ‘(’ before ‘<’ token
                       <li class="edge-item-fix"><a href="/security" class="py-2 lh-condensed-ultra d-block no-underline link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Security">Security <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a></li>
                                                                                                                                                                                                                                                                                                                    ^
./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:211:299: error: expected identifier or ‘(’ before ‘<’ token
                       <li class="edge-item-fix"><a href="/explore" class="py-2 lh-condensed-ultra d-block link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Explore">Explore GitHub <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a></li>

I try to compile with nginx 1.19 and got the latest version off github .

Before making I did:

Download and unpack sources of nginx 1.19
Download and unpack (as subdir in sourcetree of nginx) source of nginx-ldap-auth module

yum install gcc zlib-devel openssl-devel make pcre-devel libxml2-devel libxslt-devel libgcrypt-devel gd-devel perl-ExtUtils-Embed GeoIP-devel

and

./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-http_ssl_module --with-http_sub_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_secure_link_module --add-module=./nginx-auth-ldap-master --with-http_auth_request_module --with-ipv6 --with-cc-opt='-O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' 

What am I missing? I did this same excercition long ago which went OK. Just too long to remember and the sources of that moment are long gone.

One Answer

It appears that you are trying to "compile HTML". It is obvious from the errors, just look closely:

./ngx_http_auth_ldap_module/ngx_http_auth_ldap_module.c:6:1: error: expected identifier or ‘(’ before ‘<’ token
<!DOCTYPE HTML>
...

or

<a href="/features" class="py-2 lh-condensed-ultra d-block link-gray-dark no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Features">Features <span class="Bump-link-symbol float-right text-normal text-gray-light">&rarr;</span></a>

This may have happened because you used the wrong link to download either of NGINX or module's source tarball.

CentOS stands for Community Enterprise OS. By compiling software as opposed to using available packages, there is a notable security risk for production servers.

Better alternatives are:

Answered by Danila Vershinin on December 9, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP