LINUX.ORG.RU

Чего напортачили в gcc 4.7 ?


0

2

Имеем duron без sse и новую слаку с гцц 4.7. Крашится гимп при выборе любого пункта в меню «Цвет». Пересобрал гцц 4.5 babl, gegl и сам гимп , все работает как часы.
Какие глюки всунули в 4.7 ?



Последнее исправление: serg10etomarkov (всего исправлений: 1)

Например невозможность запустить гимп из консоли и выдать трейс.

devl547 ★★★★★
()
Ответ на: комментарий от megabaks

Чего тебе не хватает , вывода gdb ?
Да на :-)
Program received signal SIGILL, Illegal instruction.
0xb7616269 in ?? () from /usr/lib/libgegl-0.2.so.0
(gdb) bt
#0 0xb7616269 in ?? () from /usr/lib/libgegl-0.2.so.0
#1 0xb7613ff1 in gegl_operation_get_bounding_box ()
from /usr/lib/libgegl-0.2.so.0
#2 0x00001358 in ?? ()
#3 0xb7622114 in ?? () from /usr/lib/libgegl-0.2.so.0
#4 0x0876ecb0 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
(gdb)
Это собранное с 4.7, собранное с 4.5 жалуется ni version information libjpeg, но работает нормально

serg10etomarkov
() автор топика
Ответ на: комментарий от serg10etomarkov

Пересобрал гцц 4.5 babl, gegl и сам гимп , все работает как часы.

Патрег? Ты?

Если серьёзно, то

Крашится гимп при выборе любого пункта в меню «Цвет»

В консоли запусти или на .xsession-errors глянь. В крайнем случае strace.

vahtu
()
Ответ на: комментарий от megabaks

Выше
Это не флаги, с этими вообще все должно работать. Это глюки гцц 4.7

serg10etomarkov
() автор топика
Ответ на: комментарий от serg10etomarkov

in ?? ()
что ты в отладочной информации самого гимпа будешь ловить ?

А что я должен здесь ловить? Глянь уже на хсессион-еррорс же. Ну.

vahtu
()
Ответ на: комментарий от anonymous

Руки у всех одинаковые, с пятью пальцами, разный язык, с различной степенью жесткости :-)

serg10etomarkov
() автор топика
Ответ на: комментарий от anonymous

Зачем ? :-) Еще разик, имеем только что поставленную новую слаку, в которой гимп, собранный патриком с гцц 4.7 крашится. Не крашится гимп собранный с теми же флагами с гцц 4.5 Что ты хочешь узреть ?

serg10etomarkov
() автор топика
Ответ на: комментарий от serg10etomarkov

in ??

если есть вывод гимпа в отладчике

Настолько толсто, что уже тонко.

vahtu
()
Ответ на: комментарий от serg10etomarkov

Program received signal SIGILL, Illegal instruction.
0xb7616269 in ?? () from /usr/lib/libgegl-0.2.so.0

Прекрасно, осталось получить опкод этой инструкции по вышеуказанному адресу - и всё прояснится (из какого SSE-семейства она).

Пересобирать можно было пробовать только libgegl.

gag ★★★★★
()
Ответ на: комментарий от serg10etomarkov

Что ты хочешь узреть ?

Нормальный выхлоп, в котором будет более понятно, где и почему крашится; ваш Кэп.

anonymous
()
Ответ на: комментарий от serg10etomarkov

Профессор Плейшнер выбрасывался из окна в пятый раз. Яд не действовал. :)

vahtu
()
Ответ на: комментарий от gag

Чего то не понял, конфигурация с --enable-debug дает те же самые вопросики. Как ее вообще включить ?
Впрочем не суть, gegl автоматом ставит -enable-sse при конфигурации, и если gcc 4.5 умел эмулировать sse хоть в каких то пределах, то 4.7 похоже отучился напрочь. Даже есди узнать что именно от там разучился эмулировать, это не сильно поможет

serg10etomarkov
() автор топика
Ответ на: комментарий от anonymous

да лано, я этим никогда не занимался :-)
Счас попробую

serg10etomarkov
() автор топика
Ответ на: комментарий от anonymous

Program received signal SIGILL, Illegal instruction.
get_bounding_box (self=0x9a2ba30) at gegl-operation-filter.c:229
229 return result;
(gdb) bt
#0 get_bounding_box (self=0x9a2ba30) at gegl-operation-filter.c:229
#1 0xb76116d1 in gegl_operation_get_bounding_box (self=0x9a2ba30) at gegl-operation.c:178
#2 0x00001368 in ?? ()
#3 0xb761fee6 in gegl_have_visitor_visit_node (self=0x9a2cc68, node=0x9151b48) at gegl-have-visitor.c:68
#4 0x09a828e8 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
(gdb)

serg10etomarkov
() автор топика
Ответ на: комментарий от gag

Да я уже пересобрал gegl с выключенным sse и включенной mmx с гцц 4.7, и все пашет. Сейчас просто лень заново делать, сорри :-)

serg10etomarkov
() автор топика
Ответ на: комментарий от anonymous

Да хоть всю винду :-)) У меня падает, а чего там у кого на чем , да мне то .. похрен

serg10etomarkov
() автор топика
Ответ на: комментарий от anonymous

У меня тоже не падал, до недавнего времени, пока gegl с sse не приплыл вместе с новой слакой. На миксе 13.37-14 слаки все как часы было

serg10etomarkov
() автор топика

в 4.7 дохрена поломали. Попробуй кстати цлангом собрать, он вроде умеет гццнутые дополнения.

anonymous
()
Ответ на: комментарий от serg10etomarkov

в смысле в использовании? Ключи те же, тебе надо только gcc на clang в слакбилде заменить.

anonymous
()
Ответ на: комментарий от anonymous

И все, больше ничего, никаких камней и переписывания чего то ?

serg10etomarkov
() автор топика

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

Nxx ★★★★★
()
Ответ на: комментарий от Nxx

sse в нет, это spitfire, но гцц 4.5 то ли эмулировал sse, то ли еще что то делал, чего уже не делает гцц 4.7 Отсюда глюки в гимпе

serg10etomarkov
() автор топика
Ответ на: комментарий от anonymous

Да я это уже сделал Вопрос в том, почему гцц 4.5 нормально компилировал даже с умолчальным -enable-sse , а гцц не хочет

serg10etomarkov
() автор топика
Ответ на: комментарий от serg10etomarkov

Если у тебя не поддерживается sse, и 4.5 генерил бы код с ним, у тебя так же бы падало. Значит sse был отключен где-то в процессе. А с обновлением на 4.7 такое неправильное поведение исправили, но для тебя исправление сработало наоборот. Причём конкретно гцц может быть и не причём, а косяки где-то в автотолзятине.

anonymous
()
Ответ на: комментарий от serg10etomarkov

Он был включен в слакбилде, так что это какие то «новшества»

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

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.