Всё таже проблемма с библиотеками

При компиляции пакетов выдает ошибку. Много читал на форуме но так и не понял как сопоставить изложенное к моей проблемме.Зарание спасибо.

/var/tmp/portage/x11-libs/qt-3.3.8-r3/work/qt-x11-free-3.3.8/bin/uic: error while loading shared libraries: libmng.so.1: cannot open shared object file: No such file or directory
make[3]: *** [boxeditor.h] Ошибка 127
make[3]: Leaving directory `/var/tmp/portage/x11-libs/qt-3.3.8-r3/work/qt-x11-free-3.3.8/tools/designer/designer'
make[2]: *** [sub-designer] Ошибка 2
make[2]: Leaving directory `/var/tmp/portage/x11-libs/qt-3.3.8-r3/work/qt-x11-free-3.3.8/tools/designer'
make[1]: *** [sub-designer] Ошибка 2
make[1]: Leaving directory `/var/tmp/portage/x11-libs/qt-3.3.8-r3/work/qt-x11-free-3.3.8/tools'
make: *** [sub-tools] Ошибка 2
*
* ERROR: x11-libs/qt-3.3.8-r3 failed.
* Call stack:
* ebuild.sh, line 1654: Called dyn_compile
* ebuild.sh, line 990: Called qa_call 'src_compile'
* ebuild.sh, line 44: Called src_compile
* qt-3.3.8-r3.ebuild, line 214: Called die
*
* (no error message)
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/x11-libs/qt-3.3.8-r3/temp/build.log'.
*
[/]

запости то что

запости то что выше было

Не, не пости.

Система не находит файл libmng.so.1. Посмотри, есть ли у тебя такой вообще. Если да, то см.далее. Если нет, то посмотри есть ли варианты файла libmng. с другим окончанием. Если нашёл таки, то тебе в руки ln -s /What_you_Found /usr/lib/libmng.so.1. Если у тебя такой библиотеки вообще нет, то просто некий дядя прописал в ebuild не все зависимости. Гугли на имя файла libmng пока не найдёшь, в какой пакет она входит, поставь этот пакет, а затем повтори рекурсивно. И так для всех похожих ошибок.

Если же файл с таким именем есть, то он может быть битый. Используй equery чтобы найти, в какой пакет он входит, и переустанови.

revdep-rebuild не

revdep-rebuild не поможет?

Не всегда

Не поможет, если сдох только один файл из ebuild, или если, как это часто бывает на Linux, в пакете файл называется "так" а зависимый от него ожидает, что файл зовётся "сяк". С точки зрения систем установки - полный ОК.

Re: это часто бывает на Linux

вот ты так уверенно заявляеш, а между тем в генте такого нет - это раз.
если глянуть в ебилд от qt-3.3.8(а ты это делал прежде чем писать камент?) который ставит топикстартер - там есть >=media-libs/libmng-1.0.9 в секции DEPEND , тоесть эта либа должна стоять - это два
и ещё человек говорит что у него "ошибки" а не "ошибка", тоесть пакетов валится много - это три.

осторожнее в выводах пока несильно разобрался в дистре...
а ревдеп-ребилд может и помоч, только нада узнать что за ошибки были.
нада видеть то что было до того куска что запостили...

------------

В дженте такого нет? Да вам можно памятник поставить? А как же вы от этого избавились? После каждого обновления каждого пакета отряд фанатиков собирает все, которые от него зависят? Или разъясните?

там есть >=media-libs/libmng-1.0.9 в секции DEPEND , тоесть эта либа должна стоять - это два ты недопонял, о чём я пишу. пакет libmng конечно, должен стоять. Тут никакого спору. Но есть ли в нём файл libmng.so.1 ? По чьему-то недосмотру он может оказаться libmng.so или libmng.so.0 и не иметь ссылки как libmng.so.1. Я в Дженте 4 дня, не спорю. И уже дважды с этим стокнулся. Первый раз не помню, второй была библиотека libexpat.so от которой ожидалась ссылка libexpat.so.1. Так что этот косяк в уважаемой дженте есть.

экспат это

экспат это конечно тема, только если ты читаеш то что пишет emerge - он тебя просил запустить revdep-rebuild после апдейта экспата...

Насчет expat и

Насчет expat и revdep-rebuild мне не помогло, причем subversion даже 2 раза пересобирал. Решилось только сим линком.

я обновил два

я обновил два сабвершена нормально,
как советуют лучшие собаководы делал revdep-rebuild -X

Руки растут из

Руки растут из верхней части ног?. А вот рекомендовать заведомо неправильные действия это есть по крайней мере нехорошо.
а вот прочитать ман к revdep-rebuild и узнать что можно принудительно пересобрать пакеты привязанные к определённой версии либы не судьба...

мне помогло уже

мне помогло уже на 3х системах...

Может

Вот это может быть.Я тогда ещё не обратил внимание, что после установки текст выводится. Кстати, не подскажешь, а как читать то, что выводится после установки пакета, если сразу не скинул вывод в файл?

легко PORT_LOGDIR="/var

легко

PORT_LOGDIR="/var/log/emerge-logs/"
PORTAGE_ELOG_CLASSES="info warn error"
PORTAGE_ELOG_SYSTEM="save jabber"
PORTAGE_ELOG_JABBERFROM="user@example.net:pass"
PORTAGE_ELOG_JABBERTO="user1@example.net"

первое просто сохраняет, а если поставить app-portage/portage-mod_jabber и куски про джаббер - будет слать логи на джаббер.

Поставил libmng

Странно
/usr/lib64/libmng.a
/usr/lib64/libmng.la
/usr/lib64/libmng.so -> libmng.so.1.0.0
/usr/lib64/libmng.so.1 -> libmng.so.1.0.0
/usr/lib64/libmng.so.1.0.0

Проверь у себя equery files libmng

Проверил equery

Проверил equery files libmng
/usr
/usr/include
/usr/include/libmng.h
/usr/include/libmng_conf.h
/usr/include/libmng_types.h
/usr/lib64
/usr/lib64/libmng.a
/usr/lib64/libmng.la
/usr/lib64/libmng.so
/usr/lib64/libmng.so.1
/usr/lib64/libmng.so.1.0.0
/usr/share
/usr/share/doc
/usr/share/doc/libmng-1.0.9-r1
/usr/share/doc/libmng-1.0.9-r1/CHANGES.bz2
/usr/share/doc/libmng-1.0.9-r1/README.autoconf.bz2
/usr/share/doc/libmng-1.0.9-r1/README.bz2
/usr/share/doc/libmng-1.0.9-r1/README.config.bz2
/usr/share/doc/libmng-1.0.9-r1/README.contrib.bz2
/usr/share/doc/libmng-1.0.9-r1/README.dll.bz2
/usr/share/doc/libmng-1.0.9-r1/README.examples.bz2
/usr/share/doc/libmng-1.0.9-r1/README.footprint.bz2
/usr/share/doc/libmng-1.0.9-r1/README.packaging.bz2
/usr/share/doc/libmng-1.0.9-r1/doc.readme.bz2
/usr/share/doc/libmng-1.0.9-r1/libmng.txt.bz2
/usr/share/man
/usr/share/man/man3
/usr/share/man/man3/libmng.3.bz2
/usr/share/man/man5
/usr/share/man/man5/jng.5.bz2
/usr/share/man/man5/mng.5.bz2

Ссылки имеются
/usr/lib64/libmng.so -> libmng.so.1.0.0
/usr/lib64/libmng.so.1 -> libmng.so.1.0.0

Запускал revdep-rebuild

Пересобирал пакет libmng
Ни чего не помогает... Беда товарисчи линуксойды :(

*

ну а qt -то зачем компилировать ))) возьмите готовый.
а вообще если делать нечего то надо все пересобрать с одинаковыми флагами - а при пересборке обнаружится что что-то новое появилось )

----------

А зачем тогда gentoo ставить? Брите Fedora. Там всё сразу готовое, со всеми мыслимыми флагами. Грузится вдвое дольше винды.

>>А зачем тогда

>>А зачем тогда gentoo ставить? Брите Fedora. Там всё сразу готовое, со всеми мыслимыми флагами. Грузится вдвое дольше винды.

Одно из двух. Либо у вас федора тормозная, либо винда шустрая. Особой разницы между корректно установленными дистрами (у бинарных дистров несколько сборок, начиная с 386 и до amd64) по скорости не вижу.

в 64-битной

в 64-битной системе /usr/lib не есть ссылка на /usr/lib64 ?

На всяк случай, попробуйте
env-update; source /etc/profile
и собрать qt

Кстати, что
ls -l /etc/profile
кажет?

Были подобные

Были подобные проблемы. Когда сдуру купил AMD и в последствии поменяв платформу на Intel долго ковырялся в конфигах из-за разницы x86 и x86_64

странно - а

странно - а почему архитектура поменялась?

Всем большое

Всем большое спасиибо за участие! Разобрался...
Нужно сделать ссылки в /usr/lib на библиотеки хранящиеся в /usr/lib64.

скорее всего

скорее всего просто с либ на либ64

Проблемы

Проблемы продолжаются, только теперь с установкой glib.

mkdir .libs
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -pthread -march=athlon64 -O3 -pipe -msse3 -Wall -MT gatomic.lo -MD -MP -MF .deps/gatomic.Tpo -c gatomic.c -fPIC -DPIC -o .libs/gatomic.o
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -pthread -march=athlon64 -O3 -pipe -msse3 -Wall -MT garray.lo -MD -MP -MF .deps/garray.Tpo -c garray.c -fPIC -DPIC -o .libs/garray.o
{standard input}: Assembler messages:
{standard input}:64: Error: suffix or operands invalid for `cmpxchg'
make[4]: *** [gatomic.lo] Ошибка 1
make[4]: *** Ожидание завершения заданий...
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -pthread -march=athlon64 -O3 -pipe -msse3 -Wall -MT gasyncqueue.lo -MD -MP -MF .deps/gasyncqueue.Tpo -c gasyncqueue.c -fPIC -DPIC -o .libs/gasyncqueue.o
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -pthread -march=athlon64 -O3 -pipe -msse3 -Wall -MT gasyncqueue.lo -MD -MP -MF .deps/gasyncqueue.Tpo -c gasyncqueue.c -o gasyncqueue.o >/dev/null 2>&1
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -pthread -march=athlon64 -O3 -pipe -msse3 -Wall -MT garray.lo -MD -MP -MF .deps/garray.Tpo -c garray.c -o garray.o >/dev/null 2>&1
make[4]: Leaving directory `/var/tmp/portage/dev-libs/glib-2.12.13/work/glib-2.12.13/glib'
make[3]: *** [all-recursive] Ошибка 1
make[3]: Leaving directory `/var/tmp/portage/dev-libs/glib-2.12.13/work/glib-2.12.13/glib'
make[2]: *** [all] Ошибка 2
make[2]: Leaving directory `/var/tmp/portage/dev-libs/glib-2.12.13/work/glib-2.12.13/glib'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Leaving directory `/var/tmp/portage/dev-libs/glib-2.12.13/work/glib-2.12.13'
make: *** [all] Ошибка 2
*
* ERROR: dev-libs/glib-2.12.13 failed.
* Call stack:
* ebuild.sh, line 1654: Called dyn_compile
* ebuild.sh, line 990: Called qa_call 'src_compile'
* ebuild.sh, line 44: Called src_compile
* glib-2.12.13.ebuild, line 68: Called die
*
* make failed
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/dev-libs/glib-2.12.13/temp/build.log'.
*

Но теперь ошибка в какой - то асемблерной команде (если я правильно понял). Что делать?

Не 100%, но

Не 100%, но попробуй поменять -О3 на -О2.

msse3

Флаг msse3 ты поставил? Грохни тогда. У меня всё ставится на ура с такими CFLAGS="-march=athlon64 -mfpmath=sse -m128bit-long-double -maccumulate-outgoing-args -fomit-frame-pointer -O2 -pipe"

И -О3 на -О2

И -О3 на -О2 поменял и -msse3 убрал, не помогает...

Может

Может попробывать обновить портежи, или придеться всю систему переустанавливать?

незнаю, я так

незнаю, я так понял что ты её и неустановил толком. помоему дешевле переставить, но! если надумаеш - обязательно поставить с безопасными флагами, тоесть

CFLAGS="-march=k8 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"

march мжно на вики глянуть, или в /etc/make.conf.example а цхост не меняется. про LDFLAGS забыть. в USE много не накручивать.
И только после удачной установки системы начинать что-то мутить.

Все равно не работает

gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -DPCRE_STATIC -pthread -march=k8 -O2 -pipe -Wall -MT gbacktrace.lo -MD -MP -MF .deps/gbacktrace.Tpo -c gbacktrace.c -fPIC -DPIC -o .libs/gbacktrace.o
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -DPCRE_STATIC -pthread -march=k8 -O2 -pipe -Wall -MT gbacktrace.lo -MD -MP -MF .deps/gbacktrace.Tpo -c gbacktrace.c -o gbacktrace.o >/dev/null 2>&1
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -DPCRE_STATIC -pthread -march=k8 -O2 -pipe -Wall -MT gatomic.lo -MD -MP -MF .deps/gatomic.Tpo -c gatomic.c -fPIC -DPIC -o .libs/gatomic.o
{standard input}: Assembler messages:
{standard input}:64: Error: suffix or operands invalid for `cmpxchg'
make[4]: *** [gatomic.lo] Ошибка 1
make[4]: *** Ожидание завершения заданий...
make[4]: Leaving directory `/var/tmp/portage/dev-libs/glib-2.14.6/work/glib-2.14.6/glib'
make[3]: *** [all-recursive] Ошибка 1
make[3]: Leaving directory `/var/tmp/portage/dev-libs/glib-2.14.6/work/glib-2.14.6/glib'
make[2]: *** [all] Ошибка 2
make[2]: Leaving directory `/var/tmp/portage/dev-libs/glib-2.14.6/work/glib-2.14.6/glib'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Leaving directory `/var/tmp/portage/dev-libs/glib-2.14.6/work/glib-2.14.6'
make: *** [all] Ошибка 2
*
* ERROR: dev-libs/glib-2.14.6 failed.
* Call stack:
* ebuild.sh, line 49: Called src_compile
* environment, line 2638: Called die
* The specific snippet of code:
* emake || die "make failed"
* The die message:
* make failed
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/dev-libs/glib-2.14.6/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-libs/glib-2.14.6/temp/environment'.
*

* Messages for package dev-libs/glib-2.14.6:

*
* ERROR: dev-libs/glib-2.14.6 failed.
* Call stack:
* ebuild.sh, line 49: Called src_compile
* environment, line 2638: Called die
* The specific snippet of code:
* emake || die "make failed"
* The die message:
* make failed
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/dev-libs/glib-2.14.6/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-libs/glib-2.14.6/temp/environment'.

думаю дело в gcc,

думаю дело в gcc, попробуйте обновить(пересобрать)

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

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