Название: [SOLVED] Программа крешится под Mac OS, под Linux и Win нормально. WTF? Отправлено: walk от Май 10, 2011, 19:13 Разрабатываю кроссплатформенную программу на Qt. Попиксельная обработка изображений через интерфейс класса QImage. И вот засада: падает при входе в рекурсивную функцию, но только на Маке. Казалось бы, стек увеличь? Увеличивал до невероятных размеров, при помощи QMAKE_LFLAGS += -Wl,-stack_size,0x10000000 - никакого влияния. Да и глубина вызовов на момент падения не такая уж большая, порядка 3000, функция лёгкая.
Диагностика: Bus error. Не встречался никто с таким? Что бы это могло быть? Название: Re: Программа крешится под Mac OS, под Linux и Win нормально. WTF? Отправлено: Авварон от Май 10, 2011, 20:07 Бас эррор - это что-то с ИО связанное. У меня такое было когда диск накрылся:)
Название: Re: Программа крешится под Mac OS, под Linux и Win нормально. WTF? Отправлено: walk от Май 10, 2011, 20:20 В контексте Mac OS "bus error" - нарушение доступа к памяти, сегфолт, короче.
Название: Re: Программа крешится под Mac OS, под Linux и Win нормально. WTF? Отправлено: walk от Май 11, 2011, 10:52 Проблема решена. Было переполнение программного стека. Переделал функцию из рекурсивной в итеративную.
Название: Re: Программа крешится под Mac OS, под Linux и Win нормально. WTF? Отправлено: Авварон от Май 11, 2011, 12:57 В контексте Mac OS "bus error" - нарушение доступа к памяти, сегфолт, короче. Вы не правы |