Сборка glibc
RiD 19 октября, 2012 - 05:49
Доброго дня!
Заметил, что glibc компилируется очень долго.. На моей lfs, на ноутбуке процесс занимает около 10-15 минут.
На десктопе с i7-3770k компилируется уже часа 3.
Посмотрел в /var/tmp/portage/sys-libs/glibc-2.15-r3. Судя по всему это чудо компилируется под все архитектуры..
Иначе откуда эти пути:
/var/tmp/portage/sys-libs/glibc-2.15-r3/work/glibc-2.15/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64 /var/tmp/portage/sys-libs/glibc-2.15-r3/work/glibc-2.15/nptl/sysdeps/sparc/sparc32/sparcv9
итд...
CHOST="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe"
Вопрос. Откдуда emerge берёт архитектуру? Не из uname -m ???
В арче из uname как правило.
Второй глупый вопрос, почему в emerge -s gcc - gcc-4.5.2 ? Правильно ли я понимаю, что "самый-самый" надо ставить из оверлея?
Спасибо!
»
- Для комментирования войдите или зарегистрируйтесь
Покажите emerge --info и
Покажите
и файл /etc/make.conf либо /etc/portage/make.conf
Чтобы использовать «свежую» версию gcc, её нужно размаскировать. Хотя в таком случае, IMHO, правильнее размаскировывать всю toolchain — linux-headers, glibc, binutils, libtool
Я ♥ Gentoo & Funtoo
Спасибо за отклик!Говорят
Спасибо за отклик!
Говорят поспешишь - людей насмешишь. В данном случае проблема была в том, что glibc собирался в chroot.
После ребута в gentoo там всё прекрасно, быстро, собралось без всяких спарков.
Но подобное поведение для меня большая загадка. Не первый день плаваем, и glibc в chroot собирал ни раз.
(Как правило, когда в lfs что-то меняю/обновляю, то просто копирую на соседний раздел и там в chroot собираю).
proc sys dev были смонтированы. uname -m показывал корректно x86_64.
P.S.
gentoo - чудо!
гхрм, а зачем ставить CBUILD
гхрм, а зачем ставить CBUILD и CTARGET? Это только для кросскомпиляции, если CTARGET="$CHOST" это практически не имеет смысла. А вот граблей, судя по вашему посту, может добавить
Нейтральность - высшее достижение сознания!
Это было сделано после
Это было сделано после анализа ebuild.
Без этих переменных тоже собиралось долго.
(Оба раза я накомпилировал > гига и прерывал процесс).
Я предположил, что раз ядро от арча, возможно оно где-то что-то не так определяет, и считает, что идёт кросс-компиляция. К тому же, в ebuild.glibc любезно расписана логика
т.е. хоть это и бессмысленно, но компиляция native build должна была фиксироваться "железно"))
P.S. На самом деле, это и так было понятно. Я же посмотрел логи glibc от configure. Там было всё верно.
(Правда еще была сборка под x86, но после смены профилия на no-multilib осталась только моя архитектура).
Так что небыло оснований считать, что дело в недоопределённых перемнных.