Случилась у меня одна неприятность. На ноуте, за которым я преимущественно работаю дома, осыпался жесткий диск. Самое обидное, что потерялось много исходников и важных файлов. Но это отдельная история. В результате после замены жесткого диска и установки windows 8.1 (на ноуте стояла 8, но со временем она обновилась до 8.1) перестали компилилроваться исходники написанные в и для WinAvr. На стационарном компе у меня стоит linux mint — там проблем с этим нет. Если кто не знает, то пакет WinAWR родом с линукса.
Кстати при установке линукса я потратим гораздо меньше времени, на адаптацию. На ноут поиск и установка дров зоняла полтора часа, те, что доблестные HP выложили на оф сайте в половине случаев отказались запускаться, либо вопили о несовместимости. Если бы не кое какой софт, который не стартует под вайном, и требование записи видео для ютьюба с инструкцией «как это сделать в винде» свалил бы. Мощность моего железа не позволяет комфортно использовать виртуальную машину.
В моем случае выводилась ошибка в rm.exe. Звучала она вот так: Ошибка при запуске приложения 0xc0000142 rm.exe.
Tak make: *** [clean] Error 1
или даже так: rm -f main.hex main.bin *.o main.s twi.s make: *** [clean] Error -1073741502
Ошибка при компиляции связана с библиотекой DLL Cygwin. Данная библиотека реализует POSIX стандарт в Windows. Эла DLL библиотека является средством для переноса и запуска UNIX-программ Windows и обеспечивает интерфейс POSIX на основе системных вызовов Windows.
Решить эту проблему позволяет вот этот вот патч:
Ссылка winavr_patch
Этот патч не затрагивает систему, он лишь правит саму WinAVR. Кроме этого данный патч устраняет ошибку обработки функций, присутствовавших в WinAVR до версии 200502.
Применить патч гораздо проще и быстрее, чем вы просчитали этот текст, там всего 2 кнопки :).
Подробнее о работе в WinAVR я рассказывал здесь : Компиляция и прошивка. WinAVR + Khazama AVR Programmer.