BPL пакетов идут в неправильный каталог вывода пакетов - PullRequest
1 голос
/ 01 марта 2011

У меня есть группа проектов с несколькими пакетами, некоторые из которых требуют других в той же группе проектов.Не все пакеты имеют одинаковый набор выходных каталогов.И вот тут-то и начинается проблема.В зависимости от того, какой пакет я собираю, BPL переходят некоторое время в один каталог, в другой раз - в другой.

Я пытаюсь упростить происходящее.Скажем, у нас есть два пакета PackLib и PackDependent.PackDependent имеет PackLib в списке «Требуется».PackLib «Выходной каталог пакета» - «C: \ PackLib», каталог PackDependent - «C: \ PackDependent».Вот проблема: когда я собираю PackLib, тогда bpl идет в «C: \ PackLib» - это то, что я хочу.Но когда я собираю PackDependent, тогда также собирается PackLib (что нормально), но на этот раз PackLib.bpl переходит в "C: \ PackDependent" (ожидается: "C: \ PackLib")!

В моем контексте это вызывает все виды странного поведения, поскольку BPL продолжают генерироваться в разные каталоги, в зависимости от пакета, который я собираю.

Я что-то упустил, что мне нужно настроить?Я хочу, чтобы мои пакеты всегда отправлялись в сконфигурированный «Каталог вывода пакетов»!

1 Ответ

6 голосов
/ 01 марта 2011

Вероятно, происходит то, что ваш зависимый пакет создается неявно в результате другого пакета.Когда это происходит, параметры компилятора самого внешнего пакета используются для всех создаваемых пакетов.Что вы можете сделать, так это перейти к явной сборке пакетов, установив директиву {$ IMPLICITBUILD OFF} в каждом файле пакета dpk.Пока вы явно собираете все пакеты сверху вниз по дереву зависимостей, вы никогда не должны сталкиваться с ошибкой или не помещать пакеты в неправильное местоположение.

...