Что делает эта команда?
В скобках компилятору нужно подсунуть libgcc. С хостовой машины? Я запутался, кто собирал LFS, подскажите пожалуйста.
cat gcc/limitx.h gcc/glimits.h gcc/limity.h > \
`dirname $(x86_64-lfs-linux-gnu-gcc -print-libgcc-file-name)`/install-tools/include/limits.h
Ответы (1 шт):
cat - распечатать содержимое файла. Если файлов несколько - они печатаются один за одним. В данном случае печатаются файлы gcc/limitx.h gcc/glimits.h gcc/limity.h
Дальше символ > - это перенаправление вывода, в данном случае в отдельный файл, имя которого определяется выражением
`dirname $(x86_64-lfs-linux-gnu-gcc -print-libgcc-file-name)`/install-tools/include/limits.h
этот кусок состоит из двух частей. то, что в обратных кавычках - это команда, которую нужно выполнить и результат подставить вместо этого. Она вычисляет имя директории (каталога). Внутри ещё одна конструкция $(...) - которая делает ровно то же - запускает команду и подставляет ее вывод.
слеш после > - это просто разрыв длинной строки.