Отладчик не будет проходить через блоки, которые не имеют отладочной информации, поэтому цель состоит в том, чтобы компилятор пропустил отладочную информацию из блоков, которые вам не интересны.
Поместите свои библиотечные единицы в отдельный библиотечный проект. Это дает вам возможность иметь отдельные настройки компиляции для этих модулей, не влияя на ваш проект. Скомпилируйте библиотеку без включенной отладочной информации. Затем удалите эти библиотечные модули из вашего проекта. Вы можете продолжать использовать их, но они больше не будут принадлежать вашему проекту.
Важным аспектом здесь является то, что DCU должны находиться в отдельном каталоге от исходного кода . Если компилятор находит DCU и видит исходный код в той же папке, то он может перекомпилировать этот код, когда вы действительно этого не хотите. Установите в вашей папке «DCU output folder» значение, отличное от значения по умолчанию.
Чтобы действительно сделать это правильно, вы можете сделать то, что делает VCL, и скомпилировать две разные версии ваших библиотек. Скомпилируйте один с отладочной информацией, а другой - без, и поместите скомпилированные файлы в разные каталоги. Добавьте каталог с версиями отладки в вашу конфигурацию Delphi; там уже должна быть папка, содержащая отладочные DCU, предоставляемые Delphi.
Когда вы настраиваете две разные версии, вы позволяете себе выбирать, хотите ли вы войти в код библиотеки. Просто переключите «использовать отладочные DCU» в настройках вашего проекта. Delphi автоматически добавит и удалит папку debug-version из пути поиска при переключении этого параметра.
Обратите внимание, что даже если у вас будет отдельный библиотечный проект для ваших библиотечных модулей, вам не нужно ссылаться или распространять DLL или пакет, который генерирует этот проект. Вы можете продолжить использовать файлы DCU непосредственно в вашем проекте EXE. Вы только настраиваете отдельный проект, так что вы можете выбрать различные параметры компиляции для этих модулей. Добавьте выходную папку DCU проекта библиотеки в путь поиска вашего EXE-проекта, и вы сможете продолжать использовать модули напрямую, без необходимости распространения DLL или пакета проекта библиотеки.
IDE может попытаться автоматически добавить новые каталоги в путь поиска. Не поддерживай этого. Если там есть исходный каталог, который IDE добавила для вас, и вы не хотите его там, не стесняйтесь удалить его. IDE просто пытается быть полезной, но она не знает о вашем плане иметь отдельные исходные и скомпилированные папки.