13.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-7.5.0/gcc/Fixed-Headers.html