Подтвердить что ты не робот

Путь поиска Delphi vs путь к библиотеке и путь к просмотру

В Delphi я могу включить исходный код папки, добавив его в путь поиска проекта или добавив его в путь к библиотеке. Путь поиска применяется только к текущему проекту, тогда как путь к библиотеке применяется к любому проекту, открытому с помощью IDE.

Кроме этого, существует ли какая-либо функциональная разница между путями поиска и библиотеки?

Моя причина для запроса: у меня есть папка X с источником, используемым в проекте A. Когда я включаю эту папку в путь поиска Project A, он говорит, что не может найти конкретный файл в этой папке. Когда я включаю его в путь к библиотеке, тогда проект A компилируется отлично.

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

В то время как мы находимся в теме (и рискуем превратить себя в дурака): Каково функциональное различие между "пути к библиотеке" и "пути просмотра"?

4b9b3361

Ответ 1

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

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

Но включив скомпилированные файлы dcu, вы потеряете возможность отладки компонента thirparty. Если вы укажете путь к исходным файлам в пути просмотра, отладчик найдет источник и позволит вам войти в него.

Настройки по умолчанию для vcl показывают это. В пути к библиотеке они поместили $(BSD)\Lib, а в пути просмотра они поместили $(BDS)\SOURCE\WIN32...

Обновление. Существуют два разных пути поиска: путь поиска компилятора и путь поиска отладчика. Во-первых, компилятор ищет файлы во время компиляции, а второй - там, где отладчик ищет исходные файлы во время отладки.

Компилятор будет находить файлы только в пути к библиотеке или в пути поиска проектов. Отладчик найдет идентификаторы в пути поиска компиляторов плюс путь просмотра, исходный путь отладки для проекта и глобальный путь поиска отладки.

Не должно быть никакой разницы в определении вещей во всем мире или в проекте pr.

Ответ 2

Отладчик также найдет файлы в пути к библиотеке.