[SOLVED] не собирается x11-libs/gtk+-2.22.1-r1
sev 23 марта, 2011 - 11:53
Всем привет.
Выполняю обновление. Выполнил :
# emerge --sync
# emerge -uDNa world
вот на этом пакете ошибка:
[ebuild U ] x11-libs/gtk+-2.22.1-r1 [2.20.1-r1] USE="-examples%"
вот что пишет:
symbol lookup error: /usr/lib/qt4/libQtGui.so.4: undefined symbol: _ZNK17QVariantAnimation10metaObjectEv
make[3]: *** [gtk.immodules] Error 127
делал revdep-rebuild не помогло. Какой пакет пересобрать не пойму :(
* [SOLVED] : пакеты собрались после удаления лишних USE и CFLAGS флагов в make.conf и пересборке мира. Всем спасибо.
»
- Для комментирования войдите или зарегистрируйтесь
.
см также http://www.google.ru/search?q=libQtGui.so.4:+undefined+symbol:+_ZNK17QVariantAnimation10metaObjectEv
а эта строка - это просто подпись
Спасибо. С первопричиной
Спасибо. С первопричиной разобрался. Оказалось, что мир был собран с ключем "gtk" и "gnome" в make.conf.
Пересобрал qt-gui с флагом "-gtk" потом опять пробовал gtk+-2.22.1-r1. Результат тот-же :( сейчас в make.conf выставил "-gtk" и "-gnome". Оставил только "X" и "kde". Пересобираю мир теперь. emerge -uDNa world
Не могу сам победить :(((
Не могу сам победить :((( бьюсь уже который день- не обновляется сабж....
Временным решением я установил из бинарников таким образом :
но при обновлении мира опять gtk ставить пытается. Я пока остальные пакеты руками поставил (их не много). Как скомпилировать gtk ? Помогите, плз....
Добавлю :
В одном из форумов проблему решили изменив флаг:
у меня не прошел этот вариант :(
попробуй собрать cairo -qt4,
попробуй собрать cairo -qt4, а потом gtk
Привет. Уточню: собрать cairo
Привет.
Уточню: собрать cairo с флагом "-qt4", а сам qt4 не трогать ?
для gtk да.
для gtk да.
Выполнил. тот-же результат
Выполнил. тот-же результат :(
еще с той-же ошибкой не собрался net-libs/xulrunner и gnome-keyring не собрался :(((
в ошибке библиотека libQtGui.so.4 упомянается :
попробуй [code] emerge -1
попробуй
должно пересобрать все части qt возможно проблема в qt-core или ещё где.
только не просто "qt", а
только не просто "qt", а "qt-" ;)
делаю :)
делаю :)
пересобрал. перед этим
пересобрал. перед этим компилятор пересобрал для новых ключей. Все равно не помогло :(((
давай начнем заново и с
давай начнем заново и с простого ;)
wgetpaste `emerge --info x11-libs/gtk+`
и сцылку сюдаTheli написал(а): давай
:)
http://paste.pocoo.org/show/359424/
я бы для начала предложил
я бы для начала предложил пересобрать систему с нормальными CFLAGS/CXXFLAGS, т.е. без -msse2 и т.д. и т.п.
CFLAGS="-O2 -pipe -march=native|pentium-m -fomit-frame-pointer" вполне достаточно для безгеморройной жизни ;) ну, можно еще добавить -fexcess-precision=fast в случае gcc:4.5 ;)
прикол в том, что с флагами sse qt либо не собирается, либо плохо работает ;) где-то тут уже неоднократно писали...
.
Ну знаете ли, есть же какие-то границы... Вашего "где-то тут уже неоднократно писали" СОВСЕМ недостаточно для подобных заявлений про qt.
Я подожду от вас пруфлинков, конечно, но знали бы вы, как мне хочется материться... :(
а эта строка - это просто подпись
например
Зато Qt-core не хочет собираться с -mfpmath=sse -msse* : для неё персонально пришлось выставить только простые -O2 -march=native -pipe
вообще моя задача не разжевать, а натолкнуть на путь истинный, т.ч. можешь материться, топать ножками, но не отменит необходимости научиться пользоваться поиском ;) я не обязан помнить и коллекционировать ссылки, мое дело помнить суть и передавать ее тем, кто еще не в курсе ))
.
Theli, как бы вы прокомментировали такую женскую логику:
Посылка1: у n0nado Core2Duo и стабильная ветка amd64.
Посылка2: n0nado не "играет с флагами".
Посылка3: у n0nado qt-сore собирается и хорошо работает.
http://www.gentoo.ru/node/21986 :
Посылка4: у alex__ Core2Duo и нестабильная ветка ~amd64.
Посылка5: alex__ "играл с флагами"
Посылка6: у alex__ qt-сore не собирается
Посылка7: alex__ и Theli сообщают, что qt-сore не собирается из-за флагов "-mfpmath=sse -msse*"
Посылка8: авторы GCC сообщают, что для "x86-64 compiler" дефолтно включены флаги "-mfpmath=sse -msse*"
-----------
Заключение: Флаги "-mfpmath=sse -msse*" не влияют на то, соберётся (на amd64) qt-core или нет.
P.S. У sev вообще ACCEPT_KEYWORDS="x86"
а эта строка - это просто подпись
1.Intel 386 and AMD x86-64
1.
тебе перевести или справишься? :)
2. для x86_64 по-умолчанию выставляется -mfpmath=sse, но никак не определенные -msse, msse2 и т.д. определенные наборы инструкций выбираются программистом!
3. в сценарии configure для qt4 есть опции, которые позволяют выбрать оптимизацию под определенный набор инфтрукций (если ничего не выбрано, то срабатывает автовыбор), при этом задаются директивы, которые открывают для компилятора фрагменты кода, которые оптимизированы под определенный набор sse инструкций. пользовательский CFLAGS/CXXFLAGS не анализируется и просто конкатенируется с сгенерированными конфигуратором CFLAGS/CXXFLAGS... в результате, если выбор пользователя не совпадает с автовыбором конфигуратора, то, например, выбранный код, оптимизированный под sse, собирается с -msse2, что приводит либо к ошибке сборки, либо кривой работе конечного кода ;)
to n0nado Приятно, что вы
to n0nado Приятно, что вы внесли разнообразие в мою тему :)
Спасибо! Действительно sse
Спасибо! Действительно sse недавно поставил... поправил make.conf. Так что, теперь глобально весь мир пересобирать придется ? emerge -ave system; emerge -ave world ?
да желательно, а такого рода
достаточно
emerge -av1 glibc && emerge -ave @world
а такого рода оптимизации стоит включать для отдельных пакетов... да и как правило такие вещи выносятся соответствующими юз-флагами ;)
хотел малой кровью
хотел малой кровью обойтись... выполнил
потом сабж пересобрал- то-же самое :(((
Что посоветуете дальше делать ? emerge -ave @world тянет 600 пакетов.... я только kde настроил и звук с вай-фаем. Опять поразвалится все :(((
PS. ядро новое появилось (2.6.36-r8. было r5 у меня) стоит обновить или старое оставить ?
с чего бы всем разваливаться?
с чего бы всем разваливаться? конфиги не обновляй через etc-update бездумно и фсе ;)
Та-же ошибка.
Запустил обновление мира вот так :
обновилось все, кроме тех-же :
Уже не знаю что пробывать. system весь пересобрать ?