[devel] Bind 9.3.6-alt5 для 2.4 не собрался

Kirill A. Shutemov kirill at shutemov.name
Wed Aug 26 15:26:25 MSD 2009


2009/8/26 Dmitry V. Levin <ldv �� altlinux.org>:
> On Wed, Aug 26, 2009 at 01:24:03PM +0300, Kirill A. Shutemov wrote:
>> 2009/8/26 Dmitry V. Levin <ldv �� altlinux.org>:
>> > On Wed, Aug 26, 2009 at 01:13:55PM +0500, Sergey Y. Afonin wrote:
>> >> Приветствую.
>> >>
>> >> Хотел себе собрать апдейт для 2.4, но возникла проблема:
>> >>
>> >> gcc -I/home/asy/RPM/BUILD/bind-9.3.6 -I./include -I./../nothreads/include -I../include -I./../include -I./.. -D_GNU_SOURCE -pipe -Wall -O2 -march=i686 -W -Wall -Wmissing-prototypes -Wcast-qual -Wwrite-strings -Wformat -Wpointer-arith -fno-strict-aliasing -c resource.c  -fPIC -DPIC -o .libs/resource.o
>> >> In file included from /usr/include/linux/config.h:4,
>> >>                  from /usr/include/linux/fs.h:9,
>> >>                  from resource.c:32:
>> >> /usr/include/linux/autoconf.h:1:2: #error Invalid kernel header included in userspace
>> >>
>> >> 9.3.5 ещё собирался...
>> >
>> > В bind-9.3.5-P2 файл lib/isc/unix/resource.c заметно изменился, грубо говоря,
>> > добавилась поддержка большого числа дескрипторов, для чего в этом файле
>> > появилось следующее:
>> >
>> > #ifdef __linux__
>> > #include <linux/fs.h>  /* To get the large NR_OPEN. */
>> > #endif
>>
>> Эта конструкция не работает. С 2.6.25 <linux/fs.h> не предоставляет NR_OPEN.
>> Нужно использовать sysconf(_SC_OPEN_MAX).
>
> Ну да, на эту тему у нас есть bind-9.3.6-alt-nofile.patch
> Только здесь речь идёт о бэкпорте в ALM2.4, в котором гораздо более
> древний linux/fs.h

Для 2.4, думаю, лучше воспользоваться <linux/limits.h>. В <linux/fs.h>
определяется
какой-то нереально большой NR_OPEN -- 2^20.


More information about the Devel mailing list