[SOLVED] Не запускаются gtk-приложения
Здравствуйте!
У меня установлена gentoo amd64 с профилем default/linux/amd64/10.0/desktop/kde. Мои USE-флаги:
USE=" mmx mmxext sse sse2 sse3 ssse3 -3dnow graphite unicode -ipv6 pch custom-cflags custom-optimization \ -gnome qt4 -qt3 qt2support python3 sqlite eselect npp -gtk \ bzip2 nls idn ntlm justify wininst xattr bash-completion bdf gd threads icu syslog \ ithreads ccache jbig djbfft xmp soundex cleartype glitz lcdfilter aalib cups samba \ jpeg2k faac faad jack v4l v4l2 aalib lzma gsm imagemagick \ nsplugin nspluginwrapper ntp -bluetooth smbsharemodes hpijs scanner fuse udev xcomposite \ semantic-desktop \ mp3rtp sndfile compat contrib expat mpi xpm mmap nas -pulseaudio alsa dga dmx amr dirac schroedinger \ speex theora vdpau dv lzo mjpeg nuv postproc quicktime libffi optimized-qmake djvu \ cjk dxr3 wavpack vcd speex xvmc wmf fpx raw hdri disck-partition extras gphoto2 hotpixels timezone \ rar phonon gstreamer win64 winetriks java rle \ icq irc jabber vkontakte mrim \ handbook cdda daap mp3tunes mtp thumbnail mplayer \ qthelp udev-acl skype oscar highlight history jingle statistics mozilla video sms \ accessibility gcj"
Сразу после установки всё работало отлично, но выбивались из общего стиля оформления GTK-приложения (gimp,xsane,nvidia-setting). Установил несколько пакетов:
- x11-themes/gtk-engines-qtcurve
- х11-themes/gtk-engines-qtpixmap
- x11-themes/gtk-engines
- x11-themes/gtk-theme-switch
- kde-misc/kcm_gtk
После первого пакета нкаких изменений не произошло. Остальные установил сразу. Теперь ни одно из gtk-приложений не запускается. При попытке запустить из терминала yakuake получается вот так:
xxxx@yyyy ~ $ gimp Недопустимая инструкция xxxx@yyyy ~ $
Под рутом тоже самое.
Мне кажется что проблема в правах доступа или нужно себя добавить в какую-то группу. В общем помогите пожалуйста, не знаю что делать!
- Для комментирования войдите или зарегистрируйтесь
emerge -C
emerge -C х11-themes/gtk-engines-qtpixmap
А должны были? qtcurve - это тема, которая есть для qt3/qt4/gtk+
И помимо того, что её установить, её нужно выбрать для всех тулкитов.
Выполнил эту команду.
Выполнил эту команду. Удалился этот пакет. Никаких изменений.
Сделал revdep-rebuild. Пересобрался imagemagick и ещё один пакет связанный с графикой, конкретно с wmf.
Никаких изменений. Может нужен ребут?
CFLAGS покажите ещё.
CFLAGS покажите ещё.
Вот весь мой make.conf: #
Вот весь мой make.conf:
Не известный флаг
А это что за флаг-"qt2support"? Я только такой знаю "qt3support".
очевидно тудаже, к опечаткам
очевидно тудаже, к опечаткам VIDEO_CARD и EMERGE_DEFAULT_OPTIS.
А вот более гоночных CFLAGS я не встречал, остаётся только процитировать
http://marsoft.dyndns.info/fortunes-gentoo-ru/list.php#quote478
Точно, опечатка. Спасибо за
Точно, опечатка. Спасибо за подсказку.
Как правильно пишутся VIDEO_CARD и EMERGE_DEFAULT_OPTIS? Это взято с make.conf одного человека, у которого всё впорядке.
.
Возможно, вы имели в виду: VIDEO_CARDS и EMERGE_DEFAULT_OPTS
а эта строка - это просто подпись
Огромное спасибо!
Огромное спасибо!
Цитата: CFLAGS="-march=native
О_о
Чем обусловлен такой набор флагов? Мне от него аж страшно стало.
http://marsoft.dyndns.info/fortunes-gentoo-ru/list.php#quote478
К слову, CFLAGS к ошибке имеют самое прямой отношение
http://ru.wikipedia.org/wiki/SIGILL
Но эти флаги были
Но эти флаги были установленный до начала установки системы. И всё собранно с ними и далеко не в первый раз. Раньше всё работало.
С индивидуальными флагами собраны только:
Может подскажите какие именно пакеты нужно пересобрать для того чтобы эти три несчастные проги начали снова работать? Ведь работали же.
Да, и обусловлен набор флагов опытами вследствии которых было установленно, что с такими флагами абсолютное большинство софта работает. Объективной разницы между тупо -O3 и указанных у меня нет, разве только указанный размер кэша немного ускорил некоторые большие проги, вроде опенофиса. Субъективно конечно.
R1DDLE написал(а): Но эти
Ну раз вами установлены такие флаги, вы же твёрдо понимаете смысл каждого из них и точно знаете в каком месте он может навредит и как это обойти. Ведь так?
Рекомендую ещё раз прочитать про SIGILL
Читаю, читаю...
Значит причина не в правах доступа и не в том, что мой профиль не входит в ту или иную группу. А на 100% в том, что в этих 3-х программах или библиотеке gtk+ есть машинные инструкции которых не знает мой проц?
Что же теперь делать?..
R1DDLE написал(а): Что же
выставить CFLAGS="march=native -O2 -pipe" и выполнить emerge -e world
Точно поможет? Ждать то долго
Точно поможет? Ждать то долго прийдётся...
В общем GDB показывает, что
В общем GDB показывает, что при выполенении всех этих программ SIGILL происходит в библиотеке /usr/lib/libpangoft2-1.0.so.0.
Как узнать частью какого пакета она является?
emerge portage-utils. Хотя в
emerge portage-utils.
Хотя в твоем случае можно просто немного подумать головой.
app-emulation/emul-linux-x86-
Нашёл. Сейчас пересоберу эти два...
Ого. не ожидал адекватной
Ого. не ожидал адекватной реакции на мой совет.
Алсо, первый пересобирать бесполезно, это бинарник.
Точно. Первый оказался
Точно. Первый оказался бинарником, да и вообще непричём, т.к. /usr/lib/ указывает на /usr/lib64/ где и сидела библиотека с ошибкой.
Pango пересобранный со следующими флагами работает:
Теперь всё работает и выглядит как родное, KDE-шное.
Всем огромное спасибо! Вы мне очень помогли!
P.S. Сделал для себя открытие: GDB - рулит, особенно в gentoo :-)
Цитата: А должны были?
Скорее всего да, тут я недосмотрел доков. Это я уже потом найду. Сейчас главное чтобы проги впринципе снова заработали...
перед emerge -e system я бы
перед emerge -e world я бы посоветовал на всякие пожарные все установленные в системе пакеты перегнать в бинарники (если уже не сделано) и куда нибудь их заныкать из стандартного места хранения дабы не потереть их вовсе. Ведь не даром же экспериментировали - время тратили!
ИМХО я бы так и сделал
知る者は言わず言う者は知らず
"Бабло, побеждает даже зло"
О, идея! Спасибо!
О, идея! Спасибо!