Russian Qt Forum
Ноябрь 24, 2024, 06:54
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
Вылетает программа при релизе, что делать ?
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Вылетает программа при релизе, что делать ? (Прочитано 10405 раз)
AntonUfo
Гость
Вылетает программа при релизе, что делать ?
«
:
Октябрь 27, 2011, 16:49 »
Мучаюсь вот с чем, если запускаю программу в дебагге под компилятором, все нормально, все работает, а вот как только делаю релиз, то работает, то нет - растет память до предела и программа вылетает, возникает надпись на экране о ошибке, ни номера ошибки ни намек какого почему растет память нет. Что посоветуете ?
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Вылетает программа при релизе, что делать ?
«
Ответ #1 :
Октябрь 27, 2011, 16:51 »
Пересмотреть код и исправить ошибки.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
AntonUfo
Гость
Re: Вылетает программа при релизе, что делать ?
«
Ответ #2 :
Октябрь 27, 2011, 16:54 »
Цитата: Пантер от Октябрь 27, 2011, 16:51
Пересмотреть код и исправить ошибки.
пасиб конечно за непрозрачный намек, но если бы не бился два дня уже не написал бы на форум....
PS: конструктивные советы приветствуются.....
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Вылетает программа при релизе, что делать ?
«
Ответ #3 :
Октябрь 27, 2011, 17:01 »
могу посоветовать нанять телепата для пользователей форума, желающих тебе помочь
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Янковский Александр
Гость
Re: Вылетает программа при релизе, что делать ?
«
Ответ #4 :
Октябрь 27, 2011, 17:24 »
Цитата: kambala от Октябрь 27, 2011, 17:01
могу посоветовать нанять телепата для пользователей форума, желающих тебе помочь
ну ты злой какой-то... человек спрашивает, может чего стандартного багового кто что видел или слышал...
Раз память растет, значит где-то в потоках засада.
Например, ситуация: данные приходят по сети и складываются в очередь на обработку, а сам поток, разбирающий очередь по какой-то причине стопарнулся, вот и рост пямяти пошел...
Ну а если конкретно, то посмотри в сторону линкуемых сторонних библиотек. Для релиза и дебага они могут и отличаться
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Вылетает программа при релизе, что делать ?
«
Ответ #5 :
Октябрь 27, 2011, 17:36 »
трудно делать предположения при нулевой информации. может, например, иметь место бесконечный цикл или рекурсия (криво заданное условие окончания), может что-то загрузиться не может, может...
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
LisandreL
Птица говорун
Offline
Сообщений: 984
Надо улыбаться
Re: Вылетает программа при релизе, что делать ?
«
Ответ #6 :
Октябрь 27, 2011, 17:40 »
В выводе приложения какой код завершения приложения?
В рамках телепатии - проблемы неинициализированных переменных.
Записан
GreatSnake
Джедай : наставник для всех
Offline
Сообщений: 2921
Re: Вылетает программа при релизе, что делать ?
«
Ответ #7 :
Октябрь 27, 2011, 18:10 »
Если под линукс - valgrind тебе поможет.
Записан
Qt 5.11/4.8.7 (X11/Win)
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Вылетает программа при релизе, что делать ?
«
Ответ #8 :
Октябрь 27, 2011, 19:10 »
Цитата: AntonUfo от Октябрь 27, 2011, 16:54
PS: конструктивные советы приветствуются.....
1) Отлаживаться с включенной оптимизацией (пусть отладчик и будет врать, но разобраться часто удается)
2)
Цитата: AntonUfo от Октябрь 27, 2011, 16:49
но если бы не бился два дня уже не написал бы на форум....
возникает надпись на экране о ошибке, ни номера ошибки ни намек какого почему растет память нет.
Так что, за 2 дня так и не удалось локализоваться окружив вылет консольными сообщениями?
3)
Цитата: AntonUfo от Октябрь 27, 2011, 16:49
пасиб
Когда двухсотый юноша показывает точно такое же ординарное остроумие - это капитально отбивает охоту отвечать
Записан
thechicho
Гость
Re: Вылетает программа при релизе, что делать ?
«
Ответ #9 :
Октябрь 27, 2011, 22:02 »
это не ординарное остроумие, а современный сленг. привыкай, дальше будет "хуже" (для тебя)
Записан
AntonUfo
Гость
Re: Вылетает программа при релизе, что делать ?
«
Ответ #10 :
Октябрь 27, 2011, 22:06 »
замордовали прямо....
попытаюсь еще два раза:
Программа в дебагге под компилятором работает нормально, а вот как только делаю релиз, память растет. Как правильно посмотреть почему ?
Повторюсь, точек останова наставить не могу и посмотреть, т.к. релиз, при запуске Debug все работает и ошибок невидно....
Мне кажется что для нормального "без выпендрежа" ответа телепатом быть не надо.
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Вылетает программа при релизе, что делать ?
«
Ответ #11 :
Октябрь 27, 2011, 22:17 »
Тут может быть СТОЛЬКО ньюансов, что ответа дать просто невозможно. Лучшее решение - пересмотр кода и вывод в лог кри тических участков.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Вылетает программа при релизе, что делать ?
«
Ответ #12 :
Октябрь 28, 2011, 01:48 »
Цитата: AntonUfo от Октябрь 27, 2011, 22:06
Повторюсь, точек останова наставить не могу и посмотреть, т.к. релиз
Не переключайтесь между debug/release, они отличаются очень многим. Вместо этого в установках release включите генерацию отладки - это надо проверить в первую очередь. Если не повезет, попробуйте наоборот, завалить debug, напр. подключив ему все либы из release.
Если не знаете как сделать окно консоли и печатать в нем - спрашивайте, и стесняться нечего (в конце-концов на Вындоуз это не так просто
)
Записан
Bepec
Гость
Re: Вылетает программа при релизе, что делать ?
«
Ответ #13 :
Октябрь 28, 2011, 07:11 »
Скорее всего у тебя где то портится память/разрушается стек/выход за пределы массив/прочая гадость.
Как с этим бороться?
Выложить текст программы, или же самому просмотреть ее полностью, ставя как ни странно, контрольные сообщения, проверяя всевозможные значения.
У меня такая проблема была во вспомогательном классе, где выходило за пределы массива всего на 3 элемента
Проблема появилась только через неделю эксплуатации, когда прога уже разошлась на тестирование
Причем поведение было веселое - отжор памяти до ровно половины имеющейся, закрытие ГУИ составляющей и продолжение работы в *фоновом* режиме с потреблением 2 мб памяти
PS искал неделю, не меньше, пришлось весь проект перебирать.
Записан
GreatSnake
Джедай : наставник для всех
Offline
Сообщений: 2921
Re: Вылетает программа при релизе, что делать ?
«
Ответ #14 :
Октябрь 28, 2011, 07:52 »
Прогони через:
Dr. Memory
D.U.M.A.
Application Verifier
VMMap
CheckPointer
Memory Validator (коммерческий, но есть eval)
Записан
Qt 5.11/4.8.7 (X11/Win)
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...