Russian Qt Forum
Ноябрь 24, 2024, 11:45 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: [SOLVED] Программа крешится под Mac OS, под Linux и Win нормально. WTF?  (Прочитано 2814 раз)
walk
Гость
« : Май 10, 2011, 19:13 »

Разрабатываю кроссплатформенную программу на Qt. Попиксельная обработка изображений через интерфейс класса QImage. И вот засада: падает при входе в рекурсивную функцию, но только на Маке. Казалось бы, стек увеличь? Увеличивал до невероятных размеров, при помощи QMAKE_LFLAGS += -Wl,-stack_size,0x10000000 - никакого влияния. Да и глубина вызовов на момент падения не такая уж большая, порядка 3000, функция лёгкая.

Диагностика: Bus error.

Не встречался никто с таким? Что бы это могло быть?
« Последнее редактирование: Май 11, 2011, 10:52 от walk » Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #1 : Май 10, 2011, 20:07 »

Бас эррор - это что-то с ИО связанное. У меня такое было когда диск накрылся:)
Записан
walk
Гость
« Ответ #2 : Май 10, 2011, 20:20 »

В контексте Mac OS "bus error" - нарушение доступа к памяти, сегфолт, короче.
Записан
walk
Гость
« Ответ #3 : Май 11, 2011, 10:52 »

Проблема решена. Было переполнение программного стека. Переделал функцию из рекурсивной в итеративную.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #4 : Май 11, 2011, 12:57 »

В контексте Mac OS "bus error" - нарушение доступа к памяти, сегфолт, короче.
Вы не правы
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.096 секунд. Запросов: 22.