busybox [solved]

всем привет!
сборка мира заваливается на пакете busybox, вот содержимое build.log

>>> Unpacking source...
>>> Unpacking busybox-1.6.1.tar.bz2 to /var/tmp/portage/sys-apps/busybox-1.6.1/work
* Applying busybox-1.6.0-bb.patch ... [ ok ]
* Could not locate user configfile, so we will save a default one
* # CONFIG_DMALLOC is not set
* # CONFIG_FEATURE_SUID_CONFIG is not set
* # CONFIG_BUILD_AT_ONCE is not set
* # CONFIG_BUILD_LIBBUSYBOX is not set
* CONFIG_FEATURE_SH_IS_ASH=y
* # CONFIG_FEATURE_SH_IS_NONE is not set
* # CONFIG_STATIC is not set
* # CONFIG_DEBUG is not set
* # CONFIG_SELINUX is not set
* # CONFIG_LOCALE_SUPPORT is not set
* # CONFIG_TFTP is not set
* # CONFIG_FTPGET is not set
* # CONFIG_FTPPUT is not set
* # CONFIG_IPCALC is not set
* # CONFIG_TFTP is not set
* # CONFIG_HUSH is not set
* # CONFIG_LASH is not set
* # CONFIG_MSH is not set
* # CONFIG_INETD is not set
* # CONFIG_DPKG is not set
* # CONFIG_RPM2CPIO is not set
* # CONFIG_RPM is not set
* # CONFIG_FOLD is not set
* # CONFIG_LOGNAME is not set
* # CONFIG_OD is not set
* # CONFIG_CRONTAB is not set
* # CONFIG_UUDECODE is not set
* # CONFIG_UUENCODE is not set
* # CONFIG_SULOGIN is not set
* # CONFIG_DC is not set
*
* # CONFIG_DEBUG_INIT is not set
* # CONFIG_DEBUG_CROND_OPTION is not set
* # CONFIG_FEATURE_UDHCP_DEBUG is not set
* # CONFIG_TASKSET is not set
>>> Source unpacked.
>>> Compiling source in /var/tmp/portage/sys-apps/busybox-1.6.1/work/busybox-1.6.1 ...
SPLIT include/autoconf.h -> include/config/*
GEN include/bbconfigopts.h
/var/tmp/portage/sys-apps/busybox-1.6.1/work/busybox-1.6.1/scripts/gcc-version.sh: line 11: i686-pc-linux-gnu-gcc: команда не найдена
HOSTCC applets/usage
GEN include/usage_compressed.h
CC applets/applets.o
/bin/sh: i686-pc-linux-gnu-gcc: команда не найдена
make[1]: *** [applets/applets.o] Ошибка 127
make: *** [applets] Ошибка 2
*
* ERROR: sys-apps/busybox-1.6.1 failed.
* Call stack:
* ebuild.sh, line 1695: Called dyn_compile
* ebuild.sh, line 1033: Called qa_call 'src_compile'
* ebuild.sh, line 44: Called src_compile
* busybox-1.6.1.ebuild, line 150: Called die
* The specific snippet of code:
* emake busybox || die "build failed"
* The die message:
* build failed

у кого есть какие соображения...

Ну так тут

Ну так тут что-то с компилятором. Под рутом делаете? Перевели ? Не находит команду компилятора.

так это понятно что с ним

если поглядеть в /var/tmp/portage/sys-apps/busybox-1.6.1/work/busybox-1.6.1/scripts/gcc-version.sh:
там задается переменная
compiler="$*"
и потом юзается, так вот я задается она тем самым i686-pc-linux-gnu-gcc ей передается ккакая то команда и она ее найти не может
и в итоге вываливается ошибка. вручную ставить через make make install не получается таже самая ошибка, даже если переменную явно обозначить как "gcc"

Может, с CHOST не

Может, с CHOST не то что-то? Недоделанное обновление CHOST или gcc, что-нибудь вроде того
(просто неквалифицированное предположение)

вобщем

вручную я вроде как его поставил через make make install,
а emerge -pv world все равно показывает мне устанволенную старую версию и предлагает обновиться до новой :-)
как мне можно обмануть портеджи?? :-)

Честно не знаю,

Честно не знаю, но вроде информация по пакетам есть в /var/db;
А вообще можно переписать ebuild , убрав от туда компиляцию и запустить ))

gcc

а может методом научного тыка emerge gcc
я сейчас обновляю старый бук с 2005.0, собирал gcc. Так вроде при установке нужные переменные среды задаются.
Попробуй. Если просто лаг с ссылками, то он исчезнет.

научный тык помог

пересборка компилятора спасла отца русской демократии, но в чем косяк я так и не понял, система была собрана из третьего стеэйджа, и после emerge --sync'а просто пересобирался мир.... наверно вспышки на солнце...

Крайне не

Крайне не советую обманывать portage, но если очень хочется, то
пропиши в /etc/portage/profile/package.provided нужный пакет с указанием версии.

--
Программист - это, прежде всего, творческая личность и только потом - пьяная скотина ...

дело не в GCC

дело было не в GCC, а в каком то пакете, ситуация повторилась, и помогло только следующее

emerge `emerge -pev world |grep -v busybox |grep -v R |grep -v linux |grep -v module |grep -v net |grep -v hardened |grep -v ca |awk -F ] {'print $2'} |awk {'print $1'} |awk -F / {'print $2'} |awk -F - {'print $1'}`
и
emerge linux-headers module-init-tools ca-certificates net-tools hardened-sources
и только потом busybox собрался, от какого пакета он зависит я не выяснял

Проблема в том,

Проблема в том, что в системе gcc лежит как, скажем i686-pc-linux-gnu-gcc-4.2.2, а при сборке busybox ищется i686-pc-linux-gnu-gcc... Достаточно сделать симлинк и все самым чудесным образом собирается... Причем об этом сказано в ошибке "/bin/sh: i686-pc-linux-gnu-gcc: команда не найдена"...

Спасибо и от меня

Та же проблема, сейчас попробую Ваш рецепт.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".