[ЗАКРЫТО] Помогите собрать boost: ошибка "don't know how to make <e>gentoorelease"

Пытаюсь обновить систему, и внезапно поломалась сборка boost'а.

emerge -1 boost при сборке пишет:

b2 gentoorelease -j5 -q -d+2 --user-config=/tmp/portage/dev-libs/boost-1.52.0-r6/work/boost_1_52_0/user-config.jam -sICU_PATH=/usr --without-mpi pch=off --boost-build=/usr/share/boost-build --prefix="/tmp/portage/dev-libs/boost-1.52.0-r6/image/usr" --layout=system threading=multi link=shared --without-context --python-buildid=3.2
notice: could not find main target gentoorelease
notice: assuming it is a name of file to create.

Building the Boost C++ Libraries.


Performing configuration checks

    - has_icu builds           : yes
warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam
    - iconv (libc)             : yes
    - icu                      : yes
    - gcc visibility           : yes
    - long double support      : yes
don't know how to make <e>gentoorelease

Подробный лог emerge тут: http://pastebin.com/SvjkWDHQ

Вывод emerge --info тут: http://bpaste.net/show/145769/

Пытаюсь собрать boost версии 1.52.0-r6, с 1.54 -- та же история. 1.49 не подходит по зависимостям (ну да и с ним то же самое).

Сделал emerge -e world -- не помогло, сломалось всё на этой же ошибке. При сборке выпадает warning, мол, mpi надо -- с этим флагом тоже собирал. И вообще без флагов собирал -- один фиг.

Пробовал и с python 2.7 и 3.2 -- ошибка одинаковая.

Гугл молчит на эту тему.

Подскажите, как всё-таки забороть эту проблему?

A revdep-rebuild -p что

A revdep-rebuild -p что говорит ?
Что-то мне подсказывает, что у вас какая-то "детская ошибка" в системе, из-за чего такое получается. Может конфиг какой-то не обновили? Судя по ebuild`у проблема из-зa питона, на мой взгляд. Попробуйте python-updater

Ну или бегом багзиллу, может там чего имеется для вас.

知る者は言わず言う者は知らず
"Бабло, побеждает даже зло"

revdep-rebuild -p не находит

revdep-rebuild -p не находит поломанных связей, отрабатывает без вывода ошибок.

python-upder нашёл пару пакетов, обновил, но ошибка осталась та же.

etc-update говорит, что система в актуальном состояни.

В багзилле ошибок не нашёл, похоже, через пару дней, если не решу проблему, там поплачусь...

А с безопасными CFLAGS

А с безопасными CFLAGS собирается?

Поставил CFLAGS="O0", не

Поставил CFLAGS="O0", не собралось. Да у меня даже до компиляции дело не доходит, где-то на этапе запуска конфигурации ломается.

Попробуйте так: CFLAGS="-O2

Попробуйте так:

CFLAGS="-O2 -pipe"
CXXFLAGS=$CFLAGS

Нет, так тоже не

Нет, так тоже не получается.
Там до компиляции дело не доходит. Явно не в CFLAGS дело.

Даже с CFLAGS="-O0" половина

Даже с CFLAGS="-O0" половина пакетов не соберётся, он сломан. Даже сборка ядра сыпется в самом начале. Работает начиная с -O1

Локальный оверлей растёт

покажите,

покажите, dev-util/boost-build с флагами
и boost сфлагами, который хотите установить
И там еще eselect-boost должен обновиться

知る者は言わず言う者は知らず
"Бабло, побеждает даже зло"

> eselect-boost Откуда бы

> eselect-boost

Откуда бы такому быть?

Эм, да, что-то я не так

Эм, да, что-то я не так глянул, он как блокирует буст и не должно там быть.

知る者は言わず言う者は知らず
"Бабло, побеждает даже зло"

Не совсем понял, что имеется

Не совсем понял, что имеется ввиду под "показать dev-util/boost-build с флагами".
Видимо это:

# emerge -vp boost-build

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     UD ] dev-util/boost-build-1.52.0-r1 [1.53.0] USE="-examples -python* {-test}" 0 kB

(это я пытался поставить boost-build 1.53 с флагом "python" -- не помогло :(( )

Вот boost:

# emerge -vp boost

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     UD ] dev-util/boost-build-1.52.0-r1 [1.53.0] USE="-examples -python* {-test}" 0 kB
[ebuild  N     ] dev-libs/boost-1.52.0-r6:0/1.52  USE="doc icu nls python threads tools -debug -mpi -static-libs" PYTHON_TARGETS="python2_7 python3_2 -python2_6 (-python3_3)" 0 kB

Total: 2 packages (1 downgrade, 1 new), Size of downloads: 0 kB

eselect-boost что-то не вижу.

Мне кажется, что какой-то патч для boost не скачивается, в котором описано, как собирать цель gentoorelease. Вот только что это за патч и как его скачать?...

Кстати, если вообще без флагов собирать (USE="-*"), то ошибка меняется:

# USE="-*" emerge -1 boost
Calculating dependencies... done!

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) dev-libs/boost-1.52.0-r6
 * boost_1_52_0.tar.bz2 SHA256 SHA512 WHIRLPOOL size ;-) ...                                                                                            [ ok ]
>>> Unpacking source...
>>> Unpacking boost_1_52_0.tar.bz2 to /tmp/portage/dev-libs/boost-1.52.0-r6/work
>>> Source unpacked in /tmp/portage/dev-libs/boost-1.52.0-r6/work
>>> Preparing source in /tmp/portage/dev-libs/boost-1.52.0-r6/work/boost_1_52_0 ...
 * Applying boost-1.48.0-mpi_python3.patch ...                                                                                                          [ ok ]
 * Applying boost-1.51.0-respect_python-buildid.patch ...                                                                                               [ ok ]
 * Applying boost-1.51.0-support_dots_in_python-buildid.patch ...                                                                                       [ ok ]
 * Applying boost-1.48.0-no_strict_aliasing_python2.patch ...                                                                                           [ ok ]
 * Applying boost-1.48.0-disable_libboost_python3.patch ...                                                                                             [ ok ]
 * Applying boost-1.48.0-python_linking.patch ...                                                                                                       [ ok ]
 * Applying boost-1.48.0-disable_icu_rpath.patch ...                                                                                                    [ ok ]
 * Applying remove-toolset-1.48.0.patch ...                                                                                                             [ ok ]
 * Applying boost-1.52.0-tuple.patch ...                                                                                                                [ ok ]
 * Applying boost-1.52.0-locale-utf.patch ...                                                                                                           [ ok ]
>>> Source prepared.
>>> Configuring source in /tmp/portage/dev-libs/boost-1.52.0-r6/work/boost_1_52_0 ...
>>> Source configured.
>>> Compiling source in /tmp/portage/dev-libs/boost-1.52.0-r6/work/boost_1_52_0 ...
b2 gentoorelease -j1 -q -d+2 --user-config=/tmp/portage/dev-libs/boost-1.52.0-r6/work/boost_1_52_0/user-config.jam --disable-icu boost.locale.icu=off --without-mpi --without-python --without-locale pch=off --boost-build=/usr/share/boost-build --prefix="/tmp/portage/dev-libs/boost-1.52.0-r6/image/usr" --layout=system threading=single link=shared --without-context
notice: could not find main target gentoorelease
notice: assuming it is a name of file to create.

Building the Boost C++ Libraries.


Performing configuration checks

    - has_icu builds           : no
warning: Graph library does not contain MPI-based parallel components.
note: to enable them, add "using mpi ;" to your user-config.jam
    - gcc visibility           : yes
    - long double support      : yes
/usr/share/boost-build/build/virtual-target.jam:1079: in virtual-target.register-actual-name from module virtual-target
error: Duplicate name of actual target: <pstage/lib>libboost_system.so.1.52.0
error: previous virtual target { common%common.copy-libboost_system.so.1.52.0.SHARED_LIB { gcc%gcc.link.dll-libboost_system.so.1.52.0.SHARED_LIB { gcc%gcc.compile.c++-error_code.o.OBJ { error_code.cpp.CPP } } } }
error: created from ./stage-proper
error: another virtual target { common%common.copy-libboost_system.so.1.52.0.SHARED_LIB { gcc%gcc.link.dll-libboost_system.so.1.52.0.SHARED_LIB { gcc%gcc.compile.c++-error_code.o.OBJ { error_code.cpp.CPP } } } }
error: created from ./stage-proper
error: added properties: <threading>multi
error: removed properties: <threading>single
/usr/share/boost-build/build/virtual-target.jam:490: in actualize-no-scanner from module object(file-target)@3088
/usr/share/boost-build/build/virtual-target.jam:135: in object(file-target)@3088.actualize from module object(file-target)@3088
/usr/share/boost-build/build-system.jam:749: in load from module build-system
/usr/share/boost-build/kernel/modules.jam:283: in import from module modules
/usr/share/boost-build/kernel/bootstrap.jam:142: in boost-build from module
/tmp/portage/dev-libs/boost-1.52.0-r6/work/boost_1_52_0/boost-build.jam:17: in module scope from module

 * ERROR: dev-libs/boost-1.52.0-r6::gentoo failed (compile phase):
 *   Building of Boost libraries failed
 * 
 * Call stack:
 *     ebuild.sh, line   93:  Called src_compile
 *   environment, line 3784:  Called building
 *   environment, line 3752:  Called die
 * The specific snippet of code:
 *           ejam ${OPTIONS} $(use python && echo --python-buildid=${EPYTHON#python}) || die "Building of Boost libraries failed";
 * 
 * If you need support, post the output of `emerge --info '=dev-libs/boost-1.52.0-r6::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-libs/boost-1.52.0-r6::gentoo'`.
 * The complete build log is located at '/tmp/portage/dev-libs/boost-1.52.0-r6/temp/build.log'.
 * The ebuild environment file is located at '/tmp/portage/dev-libs/boost-1.52.0-r6/temp/environment'.
 * Working directory: '/tmp/portage/dev-libs/boost-1.52.0-r6/work/boost_1_52_0'
 * S: '/tmp/portage/dev-libs/boost-1.52.0-r6/work/boost_1_52_0'

>>> Failed to emerge dev-libs/boost-1.52.0-r6, Log file:

>>>  '/tmp/portage/dev-libs/boost-1.52.0-r6/temp/build.log'

 * Messages for package dev-libs/boost-1.52.0-r6:

 * ERROR: dev-libs/boost-1.52.0-r6::gentoo failed (compile phase):
 *   Building of Boost libraries failed
 * 
 * Call stack:
 *     ebuild.sh, line   93:  Called src_compile
 *   environment, line 3784:  Called building
 *   environment, line 3752:  Called die
 * The specific snippet of code:
 *           ejam ${OPTIONS} $(use python && echo --python-buildid=${EPYTHON#python}) || die "Building of Boost libraries failed";
 * 
 * If you need support, post the output of `emerge --info '=dev-libs/boost-1.52.0-r6::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-libs/boost-1.52.0-r6::gentoo'`.
 * The complete build log is located at '/tmp/portage/dev-libs/boost-1.52.0-r6/temp/build.log'.
 * The ebuild environment file is located at '/tmp/portage/dev-libs/boost-1.52.0-r6/temp/environment'.
 * Working directory: '/tmp/portage/dev-libs/boost-1.52.0-r6/work/boost_1_52_0'
 * S: '/tmp/portage/dev-libs/boost-1.52.0-r6/work/boost_1_52_0'

Вот сейчас собираю 1.53 все

Вот сейчас собираю 1.53 все нормально компиляется себе....
правда перед этим будет noticed, что нужно выбрать питон 3.2
а иначе ни-ни ")
UPD все собралось ;)

知る者は言わず言う者は知らず
"Бабло, побеждает даже зло"

Ну понятно, что собралось,

Ну понятно, что собралось, иначе б те версии не поместили в репозитарий или пометили, как тестовые.

А у меня не собирается!

У меня на планшете firefox и

У меня на планшете firefox и webkit не собирается. Хотя они помечены как стабильные на arm. Так что это нормально, в дереве всегда ошибки были. И чтобы собрать nm-applet без gtk3, нужно править ebuild. Остался без браузеров (links не считается) и с растущим локальным оверлеем

Локальный оверлей растёт

Спасибо за поддержку!А как

Спасибо за то, что поправили!

А как всё-таки boost собрать в моей системе?

Еще раз покажите какой у вас

Еще раз покажите какой у вас питон стоит "активным"(eselect python list) и с какими флагами вы хотите собирать boost & boost-build

UPD не будем тянуть кота за хвост... судя из прошлых логов сделайте следующее:

Кажется с питоном у вас было нормально - то есть была выбрана версия 3.2 ; если не так то исправьте.
Далее вы пробовали компилять - в смысле как только не пробовали только не так как надо!
А именно без поддержки питона. Поэотму вводим нижеследующую команду и ждем эффекта.

USE='nls python threads ' emerge -av1 boost-build boost

PPS boost-build перекомпилять обязательно с поддержкой питона !

知る者は言わず言う者は知らず
"Бабло, побеждает даже зло"

Надо удалить /etc/site-config.jam

Снова обновлял систему, столкнулся с тем же.
И снова порыл в инете, нашёл баг https://bugs.gentoo.org/show_bug.cgi?id=456792

Короче, надо убрать (переименовать) /etc/site-config.jam, и всё соберётся.

Мне ещё помогал запуск копии Gentoo в chroot'е, сборка бинарного пакета там и установка в основной системе уже бинарного пакета.

Вставил костыль, чтобы

Я вставил костыль, чтобы вываливалось с человеческим описанием ошибки

Нейтральность - высшее достижение сознания!

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

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