Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Самопроизвольная блокировка редактирования текста программы.
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > IAR
Вячик13
Инструмент - IAR ARM версия 6.30.

При открытии некоторых модулей проекта в левом нижнем углу окна текста, рядом со значком "Функции", возникает значок маленького замочка. При этом редактор не даёт менять текст. При перемещении файла модуля в другой каталог иногда блокировка устанавливается, иногда - нет. Атрибут защиты файла от записи не установлен.

Как с этим бороться? Не хочется пользоваться внешним редактором. Но если это действительно "глюк" инструмента и деваться некуда, то посоветуйте, плз, хороший внешний редактор.
scifi
Вообще практически любой внешний редактор будет лучше, чем яровский.
Для программирования надо выбирать редактор, который составляет базу символов в программе и позволяет быстро по ней ориентироваться (показать место определения функции, переменной или типа, показать все места, откуда функция вызывается и т.д.) Хотя для маленьких программ это не нужно, конечно. Лично я использую Source Insight. Говорят, SlickEdit хорош, а также редактор в Eclipse.
Кстати, проверьте права доступа к файлу, да и к папке, в которой он лежит.
ReAl
А также Code::Blocks (из недостатков — проект не переносится из Win в Lin и назад из-за разных слешей в записях о путях в проекте и непониманием разных версий слешей от другой версии), NetBeans и даже старый добрый MED (win-only)
Вячик13
Цитата(scifi @ May 13 2012, 13:54) *
Вообще практически любой внешний редактор будет лучше, чем яровский.
Для программирования надо выбирать редактор, который составляет базу символов в программе и позволяет быстро по ней ориентироваться (показать место определения функции, переменной или типа, показать все места, откуда функция вызывается и т.д.) Хотя для маленьких программ это не нужно, конечно. Лично я использую Source Insight. Говорят, SlickEdit хорош, а также редактор в Eclipse.
Кстати, проверьте права доступа к файлу, да и к папке, в которой он лежит.

Спасибо. Скорее всего буду пользоваться Source Insight. Я с ним работал года три назад - понравился тоже.
scifi
Цитата(Вячик13 @ May 14 2012, 09:54) *
Спасибо. Скорее всего буду пользоваться Source Insight. Я с ним работал года три назад - понравился тоже.

Кстати, яровская IDE необходима только для отладки. Сборку программы легко организовать через Makefile (могу подкинуть образцы). Соответственно, упрощается интеграция с Source Insight (примеры тоже могу подкинуть).
Для отладки нужно создать яровский проект с единственным файлом - выходным файлом линкера с отладочной информацией, и делается это вручную за 1 минуту.
ig_z
QUOTE (scifi @ May 14 2012, 09:18) *
Сборку программы легко организовать через Makefile (могу подкинуть образцы). Соответственно, упрощается интеграция с Source Insight (примеры тоже могу подкинуть).
Для отладки нужно создать яровский проект с единственным файлом - выходным файлом линкера с отладочной информацией, и делается это вручную за 1 минуту.


Очень интересно. Хоть я и в большей мере использую understand но и si тоже использую время от времни. Думаю, многим будет полезно посмотреть
scifi
Вот в качестве примера Makefile для iar-arm:
CODE
NAME=myprog

SHELL=CMD.EXE
IARHOME=C:/IAR-ARM/arm
CC=$(IARHOME)/bin/iccarm
LD=$(IARHOME)/bin/ilinkarm
CFLAGS=-Ohz --cpu=Cortex-M3 -r -e --relaxed_fp --silent -Isrc/
EXE=$(NAME).out
BIN=$(NAME).bin
MAP=$(NAME).map
SRC=$(subst /,\,$(addprefix $(CURDIR)/, $(wildcard src/*.c)))
OBJ=$(SRC:.c=.o)
DEP=$(SRC:.c=.d)

$(BIN): $(EXE)
@echo Generating BIN...
@$(IARHOME)/bin/ielftool $(EXE) $(BIN) --bin --silent

$(EXE): $(OBJ)
@echo Linking...
@$(LD) $(OBJ) --config linker.icf -o $(EXE) --map $(MAP)

%.o: %.c
@echo Compiling $<
@$(CC) $< $(CFLAGS) --dependencies=m $(<:.c=.d) -o $@

.PHONY: clean
clean:
@rm -f $(NAME).* $(OBJ) $(DEP)
@echo Done cleaning

-include $(DEP)

Здесь предполагается, что в корне директории проекта есть файлы make.exe, rm.exe и linker.icf. Исходники лежат в поддиректории src. Даже многопотоковая компиляция работает (make -j4).
Вот версии make и rm, которые я использую:
- GNU Make version 3.78.1, by Richard Stallman and Roland McGrath. Built for Windows32
- rm (GNU fileutils) 3.16
Также приложены скриншоты конфигурации команд Build Project, Compile File, Clean Build.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.