Welcome! Log In Create A New Profile

Advanced

Re: 0.8.35 compile error

All files from this thread

File Name File Size   Posted by Date  
nginx-compilation-error.patch 659 bytes open | download Boris Dolgov 04/06/2010 Read message
April 06, 2010 08:42AM
On Tue, Apr 06, 2010 at 04:17:01PM +0400, Maxim Dounin wrote:

> Hello!
>
> On Tue, Apr 06, 2010 at 03:46:33PM +0400, Igor Sysoev wrote:
>
> > On Tue, Apr 06, 2010 at 02:06:39PM +0300, Reinis Rozitis wrote:
> >
> > > > Looks like you are compiling nginx without http cache.
> > > > Try to apply the attached patch.
> > >
> > > Correct and the patch fixed this issue ( as it looked some unrelated module didnt provide the full configure line
> > > '--prefix=/data/nginx --with-http_image_filter_module --with-http_stub_status_module --with-http_secure_link_module --without-http-cache'
> > > )
> > >
> > > But got another now at linking stage (appears in 0.8.35 as 0.8.34 with the patch is fine):
> > >
> > > objs/src/os/unix/ngx_process.o: In function `ngx_process_get_status':
> > > /data/install/nginx-0.8.35/src/os/unix/ngx_process.c:490: warning: `sys_errlist' is deprecated; use `strerror' or `strerror_r'
> > > instead
> > > /data/install/nginx-0.8.35/src/os/unix/ngx_process.c:490: warning: `sys_nerr' is deprecated; use `strerror' or `strerror_r' instead
> > > make[1]: Leaving directory `/data/install/nginx-0.8.35'
> >
> > Now this warning will always be issued on Linux: nginx has to use
> > sys_errlist[]/sys_nerr because both strerror() and strerror_r() are not
> > signal safe.
>
> Have you considered handling signals in event loop instead (with
> additional notification pipe if it's not supported by event
> method)?

It complicates things: master process currently does not use event loop
at all, it waits in sigsuspend(). Besides, you have to use localtime_r()
and strerror_r() in signal handler anyway, becuse write() to pipe may fail.

> Alternatively it's probably good idea to just avoid logging error
> strings from signal handlers instead of using sys_errlist.

Currently nginx does this on Solaris.
I do not see using sys_errlist[] as a big issue: if you look, for example,
FreeBSD's strerror() you will see that it uses sys_errlist[] too.


--
Igor Sysoev
http://sysoev.ru/en/

_______________________________________________
nginx mailing list
nginx@nginx.org
http://nginx.org/mailman/listinfo/nginx
Subject Author Posted

0.8.35 compile error

Reinis Rozitis April 06, 2010 06:12AM

Re: 0.8.35 compile error Attachments

Boris Dolgov April 06, 2010 06:44AM

Re: 0.8.35 compile error

Reinis Rozitis April 06, 2010 07:12AM

Re: 0.8.35 compile error

Boris Dolgov April 06, 2010 07:20AM

Re: 0.8.35 compile error

Igor Sysoev April 06, 2010 07:50AM

Re: 0.8.35 compile error

Boris Dolgov April 06, 2010 08:00AM

Re: 0.8.35 compile error

Igor Sysoev April 06, 2010 08:10AM

Re: 0.8.35 compile error

Boris Dolgov April 06, 2010 08:42AM

Re: 0.8.35 compile error

Igor Sysoev April 06, 2010 08:48AM

Re: 0.8.35 compile error

Maxim Dounin April 06, 2010 08:20AM

Re: 0.8.35 compile error

Igor Sysoev April 06, 2010 08:42AM

Re: 0.8.35 compile error

spacereactor October 29, 2010 05:47AM

Re: 0.8.35 compile error

Igor Sysoev October 29, 2010 05:54AM

Re: 0.8.35 compile error

Boris Dolgov October 29, 2010 09:50AM

Re: 0.8.35 compile error

Igor Sysoev October 29, 2010 09:54AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 171
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready