Главная
›
Новости
ПРОБЛЕМЫ СОВМЕСТИМОСТИ DELPHI И WinAVR
Опубликовано: 01.09.2018
- Ох, уж мне этот Дельфи, - пробурчал с иронией мистер Бобот, наполняя чашку ароматным кофе, - вечно он все испортит в стройной гармонии выдающейся операционной системы...
|
из неопубликованных записок Бибота
|
Проблема совместимости различных программ в рамках одной операционной системы достаточно распространена. Не избежала этих проблем и связка WinAVR + Delphi . Установленная вместе с популярной средой программирования Delphi, WinAVR перестает выполнять функции компилятора, если компиляция вызывается непосредственно из оболочки Programmers Notepad. Так как это наиболее удобный способ, реализованный в этой среде разработки, то мы сталкиваемся с довольно неприятной вещью.
Что же происходит в случае установки в одной операционной системе этих двух замечательных программ? Каждая из них содержит файл с именем make.exe. И оба каталога, содержащих эти файлы, при установке прописываются в системной переменной PATH.
При компиляции программы в WinAVR происходит обращение к файлу make.exe . Но вот беда: это обращение через системную переменную PATH происходит не к файлу, хранящемуся в папке WinAVR\utils\bin , а к файлу, находящемуся в папке Delphi7\Bin (если, например, у вас установлена 7-я версия Delphi). И, конечно же, при этом файл make.exe, изготовленный в кузнице Inprise Corp., не может понять, что от него хотят.
В окошке Output в Programmers Notepad появляется следующая надпись:
Как же нам вернуть функциональность родного make.exe из набора WinAVR? Для этого есть несколько путей. Рассмотрим один из них, кажущийся наиболее простым.
В папке tools , которая располагается непосредственно в папке с Programmers Notepad, лежит единственный файл WinAVR.xml . Этот файл отвечает в Programmers Notepad за прописанные в меню Tools команды. В том числе и [WinAVR] Make All, с которой начинается данная проблема. Если мы отредактируем этот файл с помощью подходящего текстового редактора и допишем относительный путь в теги command="make.exe" , чтобы они выглядели как command="../utils/bin/make.exe" , то на этом проблема и будет решена. Правда, при этом папки с вашими проектами при компиляции должны будут находиться непосредственно в папке с WinAVR.
Если ваши проекты находятся в другой папке, лежащей непосредственно на диске, на котором установлен WinAVR, то вам следует прописывать относительный путь вида "../../winavr/utils/bin/make.exe".
Следует обратить внимание на одну деталь. Если вы перед редактированием файла WinAVR.xml сделаете его копию и оставите ее в той же папке tools , то, запустив Programmers Notepad, обнаружите в меню Tools не один, а целых два набора команд Make-Clean-Program.
Файлы с XML разметкой, расположенные в папке tools , могут быть очень полезны при оформлении единой среды разработки в WinAVR с использованием Programmers Notepad. О том, как их использовать, можно прочитать в следующем "Совете от мистера Бобота" . |
|