ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Ошибка при сборке под линуксом



On Thu, 6 Jan 2005, Kpoxa KpoIIIkin wrote:

> Igor Sysoev пишет:
>
> >On Thu, 6 Jan 2005, Igor Sysoev wrote:
> >
> >>On Thu, 6 Jan 2005, Kpoxa KpoIIIkin wrote:
> >>
> >>>попробовал включить метод select и задать FD_SETSIZE=20480, заругалось и
> >>>отказалось собираться
> >>>
> >>>make -f objs/Makefile
> >>>make[1]: Entering directory `/usr/src/nginx/nginx-0.1.13'
> >>>gcc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused -Werror -g -D
> >>>FD_SETSIZE=20480 -I src/core -I src/event -I src/event/modules -I
> >>>src/os/unix -I objs > >>>        -o objs/src/core/nginx.o > >>>        src/core/nginx.c
> >>>In file included from /usr/include/sys/types.h:215,
> >>>                 from src/os/unix/ngx_linux_config.h:17,
> >>>                 from src/core/ngx_config.h:25,
> >>>                 from src/core/nginx.c:7:
> >>>/usr/include/sys/select.h:77: warning: `FD_SETSIZE' redefined
> >>>*Initialization*:1: warning: this is the location of the previous 
> >>>definition
> >>>make[1]: *** [objs/src/core/nginx.o] Error 1
> >>>make[1]: Leaving directory `/usr/src/nginx/nginx-0.1.13'
> >>>make: *** [build] Error 2
> >>>
> >>>
> >>Линукс, в отличие от FreeBSD и Соляриса, не даёт переопределить
> >>FD_SETSIZE без предупреждения. Почему так сделано - я не знаю, возможно
> >>на FD_SETSIZE завязано что-то в glibc или ядре.
> >>
> >>
> >
> >Вот что-то на эту тему:
> >http://freebsd.rambler.ru/linux/kernel_2001/msg66929.html
> >
> >Не знаю, насколько это соответсвует современному состоянию.

> Когда требовалось скомпилить апач с увеличенным FD_SETSIZE я его просто
> во всех системных инклюдах увеличивал, работало, т.е. компилилось без
> проблем и апач держал большое число открытых файлов.

Тогда можно убрать из CFLAGS в objs/Makefile ключ -Werror.
Но использовать select для больше, чем несколько сотен сокетов не имеет
смысла.


Игорь Сысоев
http://sysoev.ru




 




Copyright © Lexa Software, 1996-2009.