Вопросы и ответы
October 16th, 2009
Какие версии Delphi поддерживает Lazy Delphi Builder?
- Я проверял работу на Delphi 6, 7, 2009. Теоретически должно работать и с Delphi 5, 2005, 2006, 2007, 2010.
Lazy Delphi Builder ничего не компилирует. В чем может быть дело?
- Для компиляции Lazy Delphi Builder запускает компилятор командной строки dcc32.exe от указанной версии Delphi. Проверьте что данный файл находится в папке DelphiBin.
- Trial версии Delphi поставляются с неработающим dcc32.exe. Точнее он работает, но умеете только показывать сообщение “Command line tools are not supported in the trial version.”.
- Turbo Explorer версия как и trial поставляется без работающего компилятора dcc32.exe
Как удобнее настроить папки в Delphi для использования Lazy Delphi Builder?
При выполнении операции Lazy Delphi Builder зависает. В чём может быть дело?
- Вероятно, Вам повезло найти ошибку в программе. Проверьте, что у вас установлена последняя версия. Пожалуйста сообщите об ошибке автору программы.
Зачем вообще нужен Lazy Delphi Builder? Ведь компоненты поставляются вместе с exe-установщиком.
- Не каждый установщик позволяет явно указать в какие раздельные папки для выходных файлов. Например, многие установщики кидают свои .bpl файлы в %Windows%System32.
- Для полной перекомпиляции программы и библиотек с нужными именно Вам параметрами и директивами. Вы можете даже перекомпилировать VCL специально для своего проекта.
- Для построения машины для сборок.
- Для компиляции и установки пэкэджей в IDE из исходных файлов с автоматическим определением зависимостей.
Хорошо, я готов использовать Lazy Delphi Builder, но что делать с компонентами, которые поставляются вместе с exe-установщиком?
- Я рекомендую использовать установщик только для распаковки исходников, а потом собирать то, что нужно с помощью Lazy Delphi Builder. Впрочем, если что-то удобнее делать без Lazy Delphi Builder, то это стоит делать без него. Обратное тоже верно. =)
- Причина по которой я советую использовать установщик только для распаковки состоит в том, чтобы всегда иметь возможность собрать проект, имея на руках только исходный код.
Я так понимаю, что за Lazy Delphi Builder-ом стоит какая-то методология? Где я могу узнать о ней подробнее?
- Я бы не назвал это методологией. Скорее набор рекомендаций для эффективной организации рабочего места Delphi программиста. Основные тезисы:
- Все исходники, относящиеся к проекту должны хранится в системе управления версиями (например, в Subversion) для того, чтобы любой член команды имел возможность собрать проект без необходимости разыскивать нужные файлы.
- Проект должен легко собираться из исходных файлов на любой машине, независимо от того в какой папке он находится. Скрипт для сборки должен храниться вместе с исходными кодами. Это позволяет быстро настроить новое рабочее место.
- Все файлы, полученные в результате сборки, должны храниться в одном месте, чтобы их можно было легко удалить. Например, чтобы пересобрать проект с другими настройками.
А существуют какие-то альтернативы Lazy Delphi Builder-у?
- Существуют как коммерческие, так и свободные инструменты для выполнения аналогичных задач. Но Lazy Delphi Builder по удобству превосходит их всех. Смотрите сравнительный обзор бесплатных инструментов для автоматизации билдов (от 28 сентября 2008 года).
- Также весьма популярен
старинныйклассический способ: устанавливать всё вручную и собирать билды прямо в Delphi. - Также для создания билда можно использовать: .bat файлы вызывающие dcc32, make, msbuild, want, ant и другие.
- Коммерческие инструменты как правило обладают более широкой функциональностью и помимо компиляции умеют выполнять ещё массу заданий. Таких как, работа с системами контроля версий, копирование, архивирование и закачка файлов, запуск юнит тестов и многое другое. Однако Lazy Delphi Builder спроектирован так, что может быть легко интегрирован как с платными так и со свободными билд-машинами.
- Единственный инструмент, который я хочу упомянуть отдельно – это Delphi Package Installer. Именно этот проект и вдохновил меня на написание Lazy Delphi Builder-a.
Как родилась идея написать Lazy Delphi Builder?
Почему бесплатно?
- Изначально проект задумывался как полезная программка для портфолио. Со временем, мне понадобилось найти работу в Штутгарте, и я подумал, что такой бесплатный проект поможет мне в этом. К тому же, мне не хочется тратить время на организацию службы поддержки почти также сильно как и не хочется предлагать некачественный продукт.
- Хотя, когда число вложенных в проект средств, превысило 5000 евро, я решил скрыть исходный код и помимо бесплатной версии, сделать ещё и платную, с дополнительным функционалом. Впрочем, это пока только планы.
Конечно, если будет мало отзывов и не будет пожертвований, проект либо станет платным, либо перестанет развиваться. Поэтому, если этот проект действительно помог Вам сэкономить время, сообщите об этом, а ещё лучше дайте денег. =)
Проводились ли тесты на известных наборах компонентов?
- Да, я регулярно пересобираю с помощью Lazy Delphi Builder следующие пакеты:
- JCL, JVCL (один раз всё-таки придётся запустить установщик), Ehlib, FastReport, FibPlus, DreamVCL, Toolbar2000 + Tbx + SpTbx + TntUnicodeControls, RxLib, а также около 30 своих пакетов, зависящих от упомянутых.
- Также, проверялась компиляция следующих пакетов:
- Полны набор DevExpress, полный набор компонентов от TMS, ZeosDBO.