revdep-rebuild постоянно пересобирает gcc

Добрый день.
По сути, проблема почти полностью дублирует тему http://www.gentoo.ru/node/22974 , но решить её с помощью средств, представленных там, у меня не получилось.
Давеча сделал полное обновление системы по Gentoo Wiki ( http://ru.gentoo-wiki.com/wiki/HOWTO_Полное_обновление_системы ). Как ни странно, всё обновилось нормально ( за исключением проблемы с gdk-pixbuf и libpng-1.5, которую я пока замаскировал для дальнейших разбирательств ). gcc обновился с 4.4.Х на 4.5.3.
После обновления, как обычно, решил сделать revdep-rebuild. Вот выхлоп:

[ 19% ]  *   broken /usr/lib/gcc/i686ц-pc-linux-gnu/4.5.3/libgomp.la (requires -lrt)
[ 25% ]  *   broken /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/libmudflap.la (requires -ldl)
[ 30% ]  *   broken /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/libmudflapth.la (requires -ldl)

И, собственно, так происходит и при последующих перезапусках. lafilefixer и fix_libtool_files.sh также уже были использованы.
Есть ли решение данной проблемы?

ACCEPT_KEYWORDS="x86"

Также, я правильно понимаю что с stable деревом творится что-то неладное? Помимо двух проблем выше ( это было первое обновление с момента установки системы ) ещё случилась проблема с samba, которая отказалась запускаться ругаясь на

/usr/sbin/smbd: error while loading shared libraries: libtalloc.so.1: cannot open shared object file: No such file or directory [ !! ]

Решение которой было найдено здесь
https://forums.gentoo.org/viewtopic-t-366499-view-next.html?sid=4475916bb311ff42378611b054e7ba67

.

DevDKN написал(а):
Давеча сделал полное обновление системы по Gentoo Wiki ( http://ru.gentoo-wiki.com/wiki/HOWTO_Полное_обновление_системы ). Как ни странно, всё обновилось нормально ( за исключением проблемы с gdk-pixbuf и libpng-1.5

Вика не догмат.
Когда в последний раз обновлял систему?
Новости читал?

:wq
--
Live free or die

Новости читал все. Ничего

Новости читал все. Ничего подобного там не видел. (возможно, пропустил или забыл) Система была установлена в августе и с тех пор полных обновлений не было. Было лишь пару --update --newuse.

emerge

emerge dev-util/lafilefixer
lafilefixer --justfixit

Не грусти, товарищ! Всё хорошо, beautiful good!

Спасибо, но lafilefixer не

Спасибо, но lafilefixer не дал никакого резульатата...

Цитата:
И, собственно, так происходит и при последующих перезапусках. lafilefixer и fix_libtool_files.sh также уже были использованы.

/

DevDKN написал(а):
gcc обновился с 4.4.Х на 4.5.3.

http://www.gentoo.org/doc/en/gcc-upgrading.xml ?
Если да, то какие-либо проблемы после успешного и полного обновления... выглядят ну очень странно.
До неправдоподобия.

:wq
--
Live free or die

Всё пересобирал и, вроде как,

Всё пересобирал и, вроде как, не один раз...
Насколько я вижу, проблема такая не у одного меня:
https://forums.gentoo.org/viewtopic-t-890648-start-0.html
https://forums.gentoo.org/viewtopic-t-800588-postdays-0-postorder-asc-start-0.html

.

DevDKN написал(а):
так происходит и при последующих перезапусках. lafilefixer и fix_libtool_files.sh также уже были использованы. Есть ли решение данной проблемы?

Есть подозрение, что изменено значение флагов mudflap и openmp, а toolchain не пересобран... Попробуйте явно сбросить эти флаги, после чего последовательная (порядок важен!) пересборка gcc binutils glibc libtool gcc (дважды указанный gcc - не очепятка)

Мы тоже не всего читали Шнитке!.. © В. Вишневский

Сейчас попробую пересобрать.

Сейчас попробую пересобрать. Я так понимаю, явно сбросить - это значит убрать их отовсюду? Потому как у меня в make.conf есть установленный флаг openmp.

.

DevDKN написал(а):
в make.conf есть установленный флаг openmp

Ну, вот там и сбросьте. Если не прав - прошу прощения, но что-то мне подсказывает, что вы попросту не умеете использовать данный флаг (указания его в юзах - недостаточно)...

Мы тоже не всего читали Шнитке!.. © В. Вишневский

Сегодня всё пересобрал

Сегодня всё пересобрал отдельными emerge --oneshot в указанном порядке, убрав перед этим флаг openmp из make.conf и сделав source /etc/profile && env-update, но проблема всё также повторяется..
Да, Вы правы, видимо флаг попал туда "по ошибке" :)

Как-то всё это не совсем так :)

А что нам скажут
egrep -w flags /proc/cpuinfo -m 1
и
egrep -w 'CFLAGS|CXXFLAGS' /etc/make.conf
?

CPU flags flags :

CPU flags

flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt lm 3dnowext 3dnow lahf_lm

/etc/make.conf:

CFLAGS="-O2 -march=k8 -pipe -msse2 -m3dnow -fomit-frame-pointer -mfpmath=sse"
CXXFLAGS="${CFLAGS}"

.

DevDKN написал(а):
Сегодня всё пересобрал отдельными emerge --oneshot в указанном порядке, убрав перед этим флаг openmp из make.conf и сделав source /etc/profile && env-update, но проблема всё также повторяется..

revdep-rebuild?
gcc-config -l
Указания из инструкции по обновлению gcc выполнены?

:wq
--
Live free or die

Да, инструкции выполнены,

Да, инструкции выполнены, gcc-config переключен и старый gcc удалён.
revdep-rebuild перезапускался несколько раз ( и с опцией -i и принудительной очисткой кеша ), но всегда пересобирает опять gcc.

.

DevDKN написал(а):
Да, инструкции выполнены, gcc-config переключен и старый gcc удалён.
revdep-rebuild перезапускался несколько раз ( и с опцией -i и принудительной очисткой кеша ), но всегда пересобирает опять gcc.

Странно.
Там же (в инструкции) завершающим шагом идёт emerge -e world, после которого потребности в revdep-rebuild быть не должно.

:wq
--
Live free or die

Ну, собственно, всё

Ну, собственно, всё изначально делалось по wiki, включая шаги по переходу на новый gcc. Потом был emerge -1bke system и после неё emerge -bke world . Т.е., я так понимаю, после этого не должно быть проблем. Но, видимо, всё-таки что-то где-то не так сделал.

DevDKN написал(а): Потом был

DevDKN написал(а):
Потом был emerge -1bke system и после неё emerge -bke world . Т.е., я так понимаю, после этого не должно быть проблем. Но, видимо, всё-таки что-то где-то не так сделал.

Быть может стоит попробовать без -bk ? Как вариант... Году в 2009-2010 emerge (у меня x86) завидев -k на уже не смотрела -b и брала из distfiles/package уже собранное не смотря на изменившиеся USE-флаги.

.

DevDKN написал(а):
Сегодня всё пересобрал отдельными emerge --oneshot в указанном порядке, убрав перед этим флаг openmp из make.conf и сделав source /etc/profile && env-update, но проблема всё также повторяется..

revdep-rebuild?
gcc-config -l
Указания из инструкции по обновлению gcc выполнены?

:wq
--
Live free or die

.

Дубль.

:wq
--
Live free or die

.

DevDKN написал(а):
убрав перед этим флаг openmp

Вы невнимательны, забыли флаг mudflap

Цитата:
проблема всё также повторяется

Насколько "так же"? Лучше бы выхлоп прикладывали, чтобы не приходилось переспрашивать, поск-ку в стартпосте показывалась не проблема, а проблемы (точнее - ошибки), а именно - облом именно на openmp и mudflap

Мы тоже не всего читали Шнитке!.. © В. Вишневский

Цитата: Вы невнимательны,

Цитата:
Вы невнимательны, забыли флаг mudflap

Ну дык нету его нигде и не было.... Был только openmp.

[ 10% ]  *   broken /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/libgomp.la (requires -lrt)
[ 13% ]  *   broken /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/libmudflap.la (requires -ldl)
[ 16% ]  *   broken /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/libmudflapth.la (requires -ldl)
[ 100% ]

.

DevDKN написал(а):
[ 10% ] * broken /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/libgomp.la (requires -lrt)
[ 13% ] * broken /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/libmudflap.la (requires -ldl)
[ 16% ] * broken /usr/lib/gcc/i686-pc-linux-gnu/4.5.3/libmudflapth.la (requires -ldl)

Создаётся впечатление, что в системе (пути указаны) остались недоудалённые файлы, поищите - если это так, то надо будет убить их (и симлинки на них тоже)... Неясным остаётся лишь момент, почему скрипт revdep-rebuild считает их нужными (вы точно пересобрали toolchain без этих флагов?)...

Мы тоже не всего читали Шнитке!.. © В. Вишневский

Да, toolchain я пересобрал

Да, toolchain я пересобрал уже после того как убрал флаги. Т.е. в минус я их не ставил. Сейчас их нигде нет.
А по файлам... В /usr/lib/gcc есть только i686-pc-linux-gnu/4.5.3.
4.5.3 - это как раз новая версия, старого уже в системе нету.
Да и дело в том, что файлы-то в /lib есть:

ls -la /lib | grep rt
-rwxr-xr-x  1 root root   30512 Дек 21 21:49 librt-2.13.so
lrwxrwxrwx  1 root root      13 Дек 21 21:50 librt.so.1 -> librt-2.13.so


ls -la /lib | grep dl
-rwxr-xr-x  1 root root    9564 Дек 21 21:49 libdl-2.13.so
lrwxrwxrwx  1 root root      13 Дек 21 21:50 libdl.so.2 -> libdl-2.13.so

.

DevDKN написал(а):
в минус я их не ставил

Не "ставя в минус", как вы говорите, гарантии их непременения нет - зависит оно от ибилда, так что убедиться в их отсутствии следует явно, выполнив emerge -pv gcc

Цитата:
ls -la /lib | grep rt

Да не, не rt... libgomp.la, libmudflap.la, libmudflapth.la искать надо. И симлинки на них...

Мы тоже не всего читали Шнитке!.. © В. Вишневский

Как его правильно

Как его правильно использовать? Можно ссылку или кодовую фразу для гугла

.

_SerEga_ написал(а):
ссылку

Ссылка

Мы тоже не всего читали Шнитке!.. © В. Вишневский

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

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