Простой рабочий процесс компиляции программы прост, я могу нарисовать его в виде небольшого графика: source -> [compilation] -> object [linking] -> исполняемый файл.В этом графе есть файлы (источник, объект, исполняемый файл) и правила (терминология make ).Этот график определен в Makefile .
Когда вы запускаете make, он читает Makefile и проверяет наличие файлов .Если он есть, он запускает правило , которое зависит от него. правило может создавать / обновлять файлы , которые могут запускать другие правила и так далее.Если вы создадите хороший make-файл, будут запущены только необходимые правила (команды компилятора / ссылки), что означает «следующий» из измененного файла в пути зависимости.
Выберите пример Makefile , прочитайте руководство по синтаксису (в любом случае, это понятно на первый взгляд, без руководства), и нарисуйте график .Вы должны понимать параметры компилятора, чтобы узнать имена файлов результатов.
Граф make должен быть настолько сложным, насколько вы хотите.Вы можете даже сделать бесконечные циклы (не делайте)!Вы можете сказать make , какое правило является вашей target , поэтому в качестве триггеров будут использоваться только левые файлы .
Снова: Нарисуйте график !.