Подтвердить что ты не робот

Что такое Makefile Target `.c.o` для?

Кто-то недавно упомянул цель .c.o в Makefiles для кросс-совместимости, но я не понимаю ее цели. Может ли кто-нибудь уточнить?

4b9b3361

Ответ 2

Это законченное правило для перевода файлов .c, т.е. модулей C, в .o объектные файлы. Он существует, поэтому вам не нужно самостоятельно писать это правило и параметризуется переменными Make, такими как CC (используемый компилятор C), CFLAGS (флаги компилятора) и т.д.

Итак, если вы используете это неявное правило для компиляции модулей C и не переделываете какие-либо переменные Make, тогда человек, создающий ваш код, может указать компилятор и флаги в командной строке без редактирования Makefile.