Система визуального объектно-ориентированного проектирования C++Builder 129

2.5.6 Настройка компилятора и компоновщика

2.5.6.1 Рекомендации по сокращению времени компиляции,
компоновки и загрузки приложения

C++Builder предлагает вам ряд опций, обеспечивающих сокращение времен-
ных затрат на цикл редактирования и выполнения приложения. Они могут задава-
ться при настройке компилятора и компоновщика с помощью команды Project | Op-
tions на различных страницах открывающегося диалогового окна (рис. 2.59).

Рис. 2.59

Страница Compiler окна Project
Options

Для того, чтобы грамотно пользоваться этими опциями, полезно представлять
себе, что происходит, когда вы, например, выполняете команду Project | Run или
нажимаете клавишу F9. При этом C++Builder выполняет следующие операции:

1. Просмотр файлов вашего проекта с целью определить, какие из них нуждают-
ся в обработке.

2. Компиляция всех файлов .срр, .pas, .asm, .re, которые были изменены со вре-
мени последней компиляции.

3. Компоновка всех объектных файлов в выполняемый файл.

4. Загрузка выполняемого файла в память и его выполнение.

Для ускорения этих операций C++Builder использует несколько возможностей.
Прежде всего это выборочная компиляция файлов. При первой в данном сеансе ком-
пиляции и компоновке приложения C++Builder запоминает для каждого файла от-
метку времени его изменения. Эта информация используется при очередной компи-
ляции для определения того, какие объектные файлы нуждаются в перестроении.

Компилируемая программа может указать, что некоторое множество заголо-
вочных файлов, включенных в проект директивами #include, должны быть пред-
варительно скомпилированы и сохранены в отдельном файле. Этот файл загружа-
ется при очередной компиляции и таким образом удается избегать повторной ком-
пиляции этих заголовочных 4>айлов. Более того, C++Builder кэширует этот файл в
памяти компьютера, так что даже повторная загрузка его может не требоваться.

Пошаговый интеллектуальный компоновщик ILINK32 сохраняет информа-
цию о произведенной компоновке в файлах выборочной компоновки Л1? и при по-

5 Зак. 764