Консольный режим компилятора VIP |
Компиляция программ на языке ( см. "Средство разработки Атлантис. Описание языка VIP") выполняется компилятором :
vip [<компилируемый-файл>] [<ключи>]
<компилируемый-файл> - файл проекта, описание словаря, интерфейс, FCOM-отчет, меню, другие программы на языке . В имени файла допускается использовать маски: *.vip, staff*.* и т.п. В этом случае будут откомпилированы все файлы, соответствующие заданной маске.
<ключи> - ключи, управляющие режимом компиляции:
/? - выдать подсказку по параметрам компилятора.
/c:<файл-конфигурации> - задать файл конфигурации компилятора. Например:
/c:"%RPP_HOME%\support.cfg" /c:galaktika.cfg
В первом случае имя файла конфигурации заключено в кавычки, т.к. в %RPP_HOME% могут встретиться имена с пробелами.
/env:<имя-окружения> - переключить на время компиляции имя системы с текущего на <имя-окружения>. Это позволяет автоматически подцеплять необходимые ресурсы на стадии компиляции программы. Имя задается в кавычках. Например:
/env:"galnet"
При запуске vip.exe с данным ключом при компиляции интерфейсов система переключается на указанную при каждой компиляции в рамках сессии. Ресурсы, зарегистрированные в репозитарии для данной системы, становятся доступными компилятору. Система должна присутствовать в репозитарии с непустым корректным путем.
После компиляции восстанавливается исходная система.
Если указанную систему не удалось найти в репозитарии или в репозитарии для нее не задан путь, то компилятор выдает ошибку.
В интерактивном режиме данную опцию можно сбросить, нажав кнопку
в диалоге выбора системы (меню "Сервис"->"Установить среду для последующей операции").Имя системы можно также задать директивой компилятора #setCurEnv (см. "Средство разработки Атлантис. Описание языка VIP"), командой меню "Сервис"->"Установить среду для последующей операции" (см. "Инструментальный комплекс Support. Компилятор интерфейсов") или командой меню "Компиляция формы"->"Система..." (см. "Инструментальный комплекс Support. Редактор отчетов FCOM").
Данный ключ доступен начиная с Атлантис 5.3.05.
/<параметр-файла-конфигурации> - параметры, прописываемые в файле конфигурации, могут быть заданы и в командной строке. Параметры задаются в виде <секция>.<параметр>=<значение>. Для многих параметров имеются краткие синонимы. Например, можно задать /Compilers.Run=on или /r - в обоих случаях после компиляции исходных файлов компилятор перейдет в режим исполнения (интерактивный режим).
Результат компиляции записывается в ресурсный файл. В дальнейшем программа, откомпилированная в ресурсный файл, интерпретируется исполняющей средой
. Для этого можно запустить компилятор VIP в интерактивном режиме (ключ /r). Либо, используя методы библиотек , можно написать специальную программу, инициирующую процесс интерпретации. Например, для запуска используется galnet.exe, а для запуска - support.exe.По умолчанию в результате компиляции создается ресурсный файл с именем Atlantis_%USER%.res в текущей директории. Имя ресурсного файла можно поменять параметром Compilers.OutputResourceName.
Начиная с Атлантис 5.2.10 добавлена продвинутая поддержка версионности ресурсов, обеспечивающая возможность хранения ресурсных элементов разных версий в одном ресурсном файле.
Протокол компиляции записывается в файл Vip_Res.log в текущей директории.
Параметры работы компилятора задаются в конфигурационном файле. По умолчанию используется файл vip.cfg в текущей директории. Конфигурационный файл можно задать явно с помощью ключа /c.
В составе инструментального комплекса
имеется модуль Компилятор интерфейсов, позволяющий писать, компилировать и отлаживать программы на языке . Фактически, возможности этого модуля совпадают с возможностями компилятора в интерактивном режиме ( см. "Инструментальный комплекс Support. Компилятор интерфейсов").Также в составе
имеется интерактивная среда разработки . В ней для компиляции используется консольный режим компилятора ( см. "Средство разработки Атлантис. Среда разработки Viper").vip.exe *.vip /r /c:support.cfg vip.exe app.prj /Compilers.Run=on /c: support.cfg
Атлантис 5.2.10 - добавлена продвинутая поддержка версионности ресурсов.
Атлантис 5.3.05 - добавлен ключ /env.