Проблемы при сборке glibc (a'la LFS)
![](http://mediasubs.ru/author/avatar/3051269.png)
Собираю чистую систему с нуля (почти LFS, но не совсем). Смысл - перевести
glibc под ядро 2.6.0. При попытке компиляции на установленной системе
(слака-9.1), и помещении хедеров от нового ядра в /usr/include,
glibc(2.3.2) ругается на несоответствие типов родной библиотеки и
заголовочных файлов.
Пришлось собрать основные пакеты для сборки (binutils, coreutils,
util-linux, gcc-core, etc.) по LFS. Помучался, собрал статически, скинул в
отдельный каталог, сделал дерево каталогов, настроил файл profile в новом
каталоге ( системное окружение, оптимизация, кое-какие настройки), сказал
chroot данный_каталог, и начал компилировать glibc.
Первая проблема с которой я столкнулся и которая не указана в LFS -
библиотека потребовала свои собственные заголовочные файлы в каталоге
chroot:/usr/include. Решил простым копированием этих заголовков из каталога
библиотеки.
Наконец с библиотеками разобрался, начал компиляцию... Примерно под конец
компиляции, сборка закончилась сообщением (извняюсь за немного обрезаное
начало - столько поместилось на экран консоли и выделилось мышкой. Но могу
заверить, до этого - все нормально. Пробовал собирать несколько раз, изменяя
параметры компилятора, в т.ч. и убирая оптимизацию):
threads -o /usr/src/glibc-build/linuxthreads/libpthread.so -T
/usr/src/glibc-build/linuxthreads/libpthread.so.lds
/usr/src/glibc-build/csu/abi-note.o -Wl,--whole-archive
/usr/src/glibc-build/linuxthreads/libpthread_pic.a -Wl,--no-whole-archive
/usr/src/glibc-build/elf/interp.os
/usr/src/glibc-build/linuxthreads/libc.so
/usr/src/glibc-build/libc_nonshared.a /usr/src/glibc-build/elf/ld.so
/usr/src/glibc-build/linuxthreads/libpthread_pic.a(ptclock_gettime.os)(.text+0x5c):
In function __udivdi3'
/usr/src/glibc-build/linuxthreads/libpthread_pic.a(ptclock_gettime.os)(.text+0x73):
In function __umoddi3'
/usr/src/glibc-build/linuxthreads/libpthread_pic.a(ptclock_gettime.os)(.text+0xf8):
In function __udivdi3'
/usr/src/glibc-build/linuxthreads/libpthread_pic.a(ptw-write.os)(.text+0x5f):
In function __i686.get_pc_thunk.bx'
/usr/src/glibc-build/linuxthreads/libpthread_pic.a(ptw-read.os)(.text+0x5f):
In function __i686.get_pc_thunk.bx'
/usr/src/glibc-build/linuxthreads/libpthread_pic.a(ptw-close.os)(.text+0x54):
In function __i686.get_pc_thunk.bx'
/usr/src/glibc-build/linuxthreads/libpthread_pic.a(ptw-accept.os)(.text+0x5b):
In function __i686.get_pc_thunk.bx'
/usr/src/glibc-build/linuxthreads/libpthread_pic.a(ptw-connect.os)(.text+0x5b):
In function __i686.get_pc_thunk.bx'
/usr/src/glibc-build/linuxthreads/libpthread_pic.a(ptw-recv.os)(.text+0x5b):__libc_recv:
more undefined references to /usr/src/glibc-2.3.2/linuxthreads'
make[1]: *** [linuxthreads/others] Error 2
make[1]: Leaving directory
Самое интересное, что библиотека libc.so в каталоге linuxthreads создается.
Может кто сталкивался с такой проблемой?
Спасибо.
-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: mailto:comp.soft.linux.discuss--unsub@subscribe.ru
http://subscribe.ru/ mailto:ask@subscribe.ru
Занимаюсь тем же самым, только донор - ASP 9.0
По какой версии (4 или 5) LFS BOOK делали то что описали.
Так у меня с 4 были помнится большие проблемы с компиляцией glibc.
Старый.
-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Отписаться: mailto:comp.soft.linux.discuss--unsub@subscribe.ru
http://subscribe.ru/ mailto:ask@subscribe.ru