11.4 Исходные файлы заголовков с фиксированными значениями
GCC требуется установить исправленные версии некоторых системных файлов заголовков. Это необходимо, так как большинство целевых систем имеют некоторые файлы заголовков, которые не будут работать с GCC без изменений. Некоторые из них содержат ошибки, некоторые несовместимы с ISO C, а некоторые зависят от специальных функций других компиляторов.
Установка GCC автоматически создает и устанавливает файлы заголовков с фиксированными значениями, выполняя программу под названием fixincludes. Обычно обращать на это внимание не нужно. Однако существуют случаи, когда это не происходит автоматически должным образом.
- Если вы обновляете системные файлы заголовков, например, установив новую версию системы, файлы заголовков GCC с фиксированными значениями не обновляются автоматически. Их можно обновить с помощью скрипта
mkheaders, установленного в libexecdir/gcc/target/version/install-tools/. - На некоторых системах каталоги файлов заголовков содержат машиноспецифические символические ссылки в определенных местах. Это позволяет совместно использовать большинство файлов заголовков между хостами, работающими с одной версией системы на разных моделях машин.
Программы, исправляющие файлы заголовков, не понимают этот специальный способ использования символических ссылок; поэтому каталог файлов заголовков с фиксированными значениями подходит только для модели машины, на которой он был создан.
Можно создавать отдельные наборы файлов заголовков с фиксированными значениями для разных моделей машин и организовать структуру символических ссылок, чтобы использовать правильный набор, но вам придется сделать это вручную.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-4.9.4/gcc/Fixed-Headers.html