Error building nginx 1.5.3 on Cygwin

Hello,

I’m trying to build nginx 1.5.3 on Cygwin using Windows 7. I see the
following output during “make”:

cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror
-g
-D FD_
SETSIZE=2048 -I src/core -I src/event -I src/event/modules -I
src/os/unix
-I ~/o
penssl-0.9.8l/.openssl/include -I objs
-o objs/src/core/ngx_output_chain.o
src/core/ngx_output_chain.c
cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror
-g
-D FD_
SETSIZE=2048 -I src/core -I src/event -I src/event/modules -I
src/os/unix
-I ~/o
penssl-0.9.8l/.openssl/include -I objs
-o objs/src/core/ngx_string.o
src/core/ngx_string.c
cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror
-g
-D FD_
SETSIZE=2048 -I src/core -I src/event -I src/event/modules -I
src/os/unix
-I ~/o
penssl-0.9.8l/.openssl/include -I objs
-o objs/src/core/ngx_parse.o
src/core/ngx_parse.c
cc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror
-g
-D FD_
SETSIZE=2048 -I src/core -I src/event -I src/event/modules -I
src/os/unix
-I ~/o
penssl-0.9.8l/.openssl/include -I objs
-o objs/src/core/ngx_inet.o
src/core/ngx_inet.c
cc1: warnings being treated as errors
src/core/ngx_inet.c: In function ngx_sock_ntop': src/core/ngx_inet.c:236: error: comparison between signed and unsigned make[1]: *** [objs/src/core/ngx_inet.o] Error 1 make[1]: Leaving directory/home/kworthington/nginx-1.5.3’
make: *** [build] Error 2

I would appreciate any help to fix this. Thank you!

Best regards,
Kevin

Hello!

On Fri, Aug 02, 2013 at 09:17:03PM -0400, Kevin W. wrote:

I’m trying to build nginx 1.5.3 on Cygwin using Windows 7. I see the
following output during “make”:

[…]

cc1: warnings being treated as errors
src/core/ngx_inet.c: In function ngx_sock_ntop': src/core/ngx_inet.c:236: error: comparison between signed and unsigned make[1]: *** [objs/src/core/ngx_inet.o] Error 1 make[1]: Leaving directory /home/kworthington/nginx-1.5.3’
make: *** [build] Error 2

I would appreciate any help to fix this. Thank you!

Looks like socklen_t is signed in your environment, which results
in a warning. Try the following patch:

— a/src/core/ngx_inet.c
+++ b/src/core/ngx_inet.c
@@ -233,7 +233,7 @@ ngx_sock_ntop(struct sockaddr *sa,

     /* on Linux sockaddr might not include sun_path at all */
  •    if (socklen <= offsetof(struct sockaddr_un, sun_path)) {
    
  •    if (socklen <= (socklen_t) offsetof(struct sockaddr_un, 
    

sun_path)) {
p = ngx_snprintf(text, len, “unix:%Z”);

     } else {

Alternatively, you may just ignore the warning, it’s harmless.


Maxim D.
http://nginx.org/en/donation.html

Hello!

On Sat, Aug 03, 2013 at 12:31:54PM -0400, Kevin W. wrote:

Hi Maxim,

Thanks so much. Your patch worked great.

The build was failing without that change.

Is there any way that patch can be incorporated into the main source, so
that it doesn’t happen again in 1.5.4?

Sure, committed. Thanks for testing.


Maxim D.
http://nginx.org/en/donation.html

Hi Maxim,

Thanks so much. Your patch worked great.

The build was failing without that change.

Is there any way that patch can be incorporated into the main source, so
that it doesn’t happen again in 1.5.4?

Thanks again, I really appreciate it.

Best regards,
Kevin

Kevin W.

http://twitter.com/kworthington

Hi Maxim,

Thanks for committing that. And again for your help.

Cheers,
Kevin

Kevin W.

http://twitter.com/kworthington