#c #linux #makefile
#c #linux #makefile
Вопрос:
Я использую g в Linux и пишу несколько программ cpp. Например У меня есть ex1.cpp , ex2.cpp , bot.cpp .
Все эти программы cpp находятся в одной папке. Я хочу использовать make для компиляции отдельных программ, так как в «make ex1» должна быть скомпилирована ex1.cpp а не другие файлы cpp. «make bot» должен только компилироваться bot.cpp
Команда компиляции, которую я намерен выполнить, :
g -o bot bot.cpp
Я не хочу писать target и dependency в MakeFile для каждой программы cpp, которую я создаю в папке, и я не хочу компилировать все cpp за один раз, используя *.cpp .
Возможно ли в первую очередь добиться этого? Да, пожалуйста, предложите решение
Комментарии:
1. Не забудьте добавить
-Wall
в свою командную строку флаги!
Ответ №1:
Простое решение вашего вопроса :
Просто запустите make ex1 в командной строке, и он будет скомпилирован с помощью команды g ex1.cpp -o ex1
.
Если вы хотите динамически включать библиотеки / общие объекты или добавлять дополнительные флаги, вам следует создать файл make или следовать процедуре, предложенной Лукашем (хотя и слишком сложной).
Ответ №2:
Вам не нужно писать makefile. make ex1
уже должен делать то, что вы хотите.