debug - release problem [solved]
От: _hum_ Беларусь  
Дата: 12.08.16 11:55
Оценка:
в общем, раньше я не делал очень больших проектов, поэтому не придавал значения важности проверки работы релиз версии на всем этапе разработки. и вот теперь столкнулся с ситуацией — проект большой (около 1.2М в .rar самописного кода), дебаг-версия работает, как надо, релизная не так, как надо.
как бы на распутьи, как малой кровью из этой ситуации выкарабкаться.
первым делом включил уровень /w4 ворнингов, с надеждой обнаружить нужное. но нет, ничего значительного.
далее попытался проверить код встроенным в VS2013 анализатором кода, но анализатор споткнулся на попытках проанализировать используемые boost-овские файлы и выдал internal error
была надежда на psv-студию, но она только под win x64, а у меня стоит win7 x32
думал попробовать вручную — сделать ассерты для релизной версии, но хорошего решения, не засоряющего код, пока не нашел (у меня код, относящийся к бизнес-логике, работает только с boost и cereal, а код gui — на qt. выбросить ассерт через std::excеption (а как по-другому, чтоб универсально?) оказалось в qt проблематичным (qt, по-видимому, не очень дружит с c++ exception-ами)

вот и непонятно, в какую сторону двигаться

upd. суть оказалось в использовании неинициализированных переменных (почему-то vs не все случаи может отслеживать) — при установке в vs /sdl вероятно, студия начала перезаписывать эти переменные, и у меня перестал работать даже debug версия, что позволило легко обнаружить место и саму пробелему простым дебагингом.

всем спасибо за советы. приму на будущее к сведению
Отредактировано 12.08.2016 21:09 _hum_ . Предыдущая версия . Еще …
Отредактировано 12.08.2016 18:18 _hum_ . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.