14.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-12.2.0/gcc/Fixed-Headers.html