Инструкция по эксплуатации

April 12th, 2011

Назначение Lazy Delphi Builder

Основные задачи, которые можно решать с помощью Lazy Delphi Builder:

  1. Проверить, скомпилируется ли проект из исходных файлов со всеми пакетами.
  2. Билд-машина, способная пересобрать программу и все зависимые пакеты с нужными вам настройками и директивами.
  3. Установить новые компоненты в IDE, без необходимости добавлять пути до исходников компонентов в Library Path. (не знаю как вы, а я нахожу утомительным, когда выясняется, что пакет не скомпилируется пока новые новые папки не будут добавлены).
  4. Переустановить кучу свзязанных пакетов (компонентов) после изменения исходников.
  5. Быстро скомпилировать чужие компоненты и проект без установки в IDE. Например, чтобы быстро собрать демки из исходников.

Порядок работы

Работу с программой можно разделить на следующие фазы

  1. Сканирование папок с исходниками.
  2. Просмотр найденных пакетов и проектов, удаление/отключение пакетов для других версий Delphi и настройка используемых папок(при желании).
  3. Компиляция.

Фазы 1 и 2, можно провести только один раз, после чего сохранить настроенный профиль в файл и запускать его при необходимости.

В случае возникновения ошибок при компиляции в программе можно посмотреть сообщение компилятора об ошибке.

Перед первым запуском рекомендую настроить рабочее место, аналогично тому, как описано здесь.


Внимание! (отмазки ;)

Перед началом работы, обязательно сделайте резервные копии библиотек, либо зафиксируйте изменения в хранилище кода.Используя эту программу, Вы соглашаетесь с тем, что Вы берёте на себя всю ответственность за возможный явный и/или косвенный ущерб, который может быть нанесён Вам и Вашей работе этой программой.

Видео: Подготовка и создание билда с помощью Lazy Delphi Builder-a.

Продолжительность: 9 минут. Язык: корявый английский. =)


Принципы работы.

Программе указывается папки, в которых лежат компоненты. Чтобы добавить папки, кликните правой мышки белом прямоугольнике с заголовком Search Paths.
После нажатия на Scan, Lazy Delphi Builder ищет в указанных папках, Delphi-файлы по указанным маскам. Ищутся следующие файлы:
*.dkp
*.dpr
*.pas
*.inc
*.res, *.dfm

Закончив поиск, программа фильтрует списки найденных файлов по списку масок указанных в Exclude Masks.

Закончив фильтрацию и поиск, Lazy Delphi Builder покажет найденные файлы в дереве.

В дереве необходимо отметить галочками, какие из найденных файлов нам нужны.
Ненужные файлы лучше удалить. Например, многие библиотеки поставляются с dpk-файлами  для нескольких версий Делфи, в то время как на рабочей станции обычно присутствует одна-две версии компилятора. А это значит, что попытка скомпилировать dpk-файлы для неустановленных версий, приведёт к ошибке. Поэтому, такие файлы лучше удалить сразу.

Для успешной компиляции пакета необходимы следующие файлы:
.dpk – один или несколько. Собственно это и есть исходный файл пакета.
.dfm, .pas, .dcu – исходники/скомпилированные исходники
.res, .dcr – скомпилированные ресурсы
.inc – include файлы. часто используются для конфигурации проекта


Компиляция.

Отметив нужные файлы галочками, можно приступать к компиляции. Нажатие на кнопку Compile запустит компиляцию выделенных пакетов. Перед компиляцией Lazy Delphi Builder отсортирует пакеты по зависимостям так, чтобы сначала компилировались те пакеты, от которых зависят другие.
Порядок компиляции таков:
1)    Если была включена галочка Clean output folders before compile, то Lazy Delphi Builder удалит папки указанные как Binary, Bpl, Dcu, Dcp и Res output folders
2)    Если была включена галочка Create output folders before compile, то Lazy Delphi Builder создаст папки указанные как Binary, Bpl, Dcu, Dcp и Res output folders если они не существуют.
3)    Потом Lazy Delphi Builder начнёт компиляцию пакетов(.dpk). Если во время компиляции произойдёт как минимум две ошибки, то процесс остановится.
4)  Если была включена галочка Register packages in IDE, то скомпилированные проекты будут зарегистрированы в IDE
5)    Ищет файлы ресурсов из указанных в дереве папок с ресурсами и копирует их в папку Res.
Если компиляция прошла успешно, то хорошей идеей будет сохранить текущий профиль на диск, и в будущем не тратить время на настройку.

Подробное описание процесса компиляции и параметров можно найти в разделе Алгоритм работы: процесс билда (компиляция).

Совет 1

На закладке Installation можно видеть прогресс компиляции, а также список команд вызывавших ошибки. В дереве файлов пакеты, вызвавшие ошибки будут подсвечены красным цветом, а выделив такой пакет мышкой, справа появится листинг ошибочной команды.

Совет 2

Для начала лучше компилировать пакеты по одному или небольшими группами. Так будет намного проще разобраться с ошибками. И лишь убедившись, что все пакеты собираются по отдельности, стоит приступать к компиляции всех сразу.

Работа с деревом.

У дерева есть два режима просмотра:

  1. Tree – иерархическое отображение структуры файлов на диске
  2. Flat - плоский список найденных файлов

Информацию в дереве можно фильтровать. Можно показывать/прятать файлы по типам:
dpk – показывать package-и
pas - показывать исходники
и т.п.

Также можно отфильтровать файлы по совпадениям в полном названии файла. Например, если ввести в поле фильтра текст 2009, то в дереве останутся только файлы содержащие 2009. А если ввести <>2009, то наоборот, будут видны только те файлы, у которых ни в имени, ни в пути не присутствует 2009.

В дереве действуют следующие комбинации клавиш:
Ctrl+Del – удалить выделенные ветки
/ – свернуть рекурсивно все ветки, начиная с текущей
* – развернуть рекурсивно все ветки, начиная с текущей
– – свернуть текущую ветку
+ – развернуть текущую ветку

Пробел – отметить галочкой/снять отметку для выделенных веток


Параметры командной строки.

/OutFolderBase <папка> – возволяет указать базовую папку для выходных папок. Можно использовать сокращённый вариант /ob

/noAutoSave – не сохраняет настройки автоматически при выходе из программы
/verbose – выводит чуть более подробную информацию о процессе комиляции
/debug – включает вывод на экран отладочной информации о процессе комиляции. Полезно для поиска ошибок.
/RegisterInIDE+ /RegisterInIDE- – включает или выключает регистрацию пакетов в IDE. Работает только в консоли.
/CleanOutFolders+ /CleanOutFolders- – включает или выключает очистку выходных папок. Работает только в консоли.
/CompilerOptions “список опций” – позволяет передать дополнительные опции компилятору. Если опций несколько, то их необходимо заключить в двойные кавычки. Работает только в консоли. Синтаксис такой же как у dcc32.exe
/DEFINE <список директив> – позволяет скомпилировать с дополнительными директивами. Директивы нужно писать подряд, разделяя точкой с запятой(;). Работает только в консоли.
/help – выводит небольшой хелп. Работает только в консоли.
/BackupOutFolders+ и /BackupOutFolders- – делать или нет резервные копии с удалённых выходных папок.
/UseRecycleBin+ и /UseRecycleBin- – использовать Корзину для удалённых выходных папок, старых резервных копий выходных папок.

Лицензия.

Вы можете бесплатно использовать Lazy Delphi Builder.

Все права на программу и исходный код принадлежат её любезному автору.
© Алексей Тимохин, 2008-2011.

Comments are closed.