Добрый день. Осваиваю ARM AT91SAM7x256, в качестве среды разработки выбрал IAR 5.4. Поигрался с проектом getting_started - все замечательно работает (проверял на отладочной плате). Решил пойти далее и создать свой простенький проект, используя куски из gettinng_started, а также библиотеки работы с периферией. Проект создал-получил соответственно две конфигурации Debug и Release, произвел настройки для каждой конфигурации причем одинаковые настройки. В итоге конфигурация Debug замечательно компилится, линкуется и работает, а вот Release конфигурация линковаться не желает и выдает ошибки: Error[Li005]: no definition for "__write" [referenced from fflush.o(dl4t_al_if.a)] Error[Li005]: no definition for "__close" [referenced from fclose.o(dl4t_al_if.a)] Error[Li005]: no definition for "remove" [referenced from fclose.o(dl4t_al_if.a)] Я так понимаю настройка линкера для Release должны отличаться от настроек для Debug? или дело в чем-то другом? Пробывал сравнить с настройками в getting_started, но там конфигурации проекта Flash и Sram, какая из них подойдет (и подойдет ли вообще) так и не понял.
произвел настройки для каждой конфигурации причем одинаковые настройки.
Настройки НЕ одинаковые, поскольку определяются (сюрприз!) не только галочками. Берете документацию на компилятор (не обязательно даже IAR) и читаете про опцию NDEBUG
спасибо за наводочку помогла продвинуться в нужном направлении. Опция NDEBUG в Release конфигурации по дефолту уже есть, а надо было еще добавить NOASSERT. Все заработало