Я изучаю OpenCV, используя Обучение OpenCV.
Одна проблема, с которой я сталкиваюсь при компиляции кода, заключается в том, что мне приходится писать длинную команду для компиляции и получения исполняемого файла.
Это команда, которую я использую
g++ `pkg-config –cflags opencv` file_name.cpp -o output_file `pkg-config –libs opencv`
Я не эксперт Make, но я думаю, что могу удалить эту длинную команду, используя make.
До этого я должен объяснить свой рабочий процесс. Я создал директорию opencv в моем домашнем каталоге (~/opencv/
). Я читаю раздел книги по разделам и кодирую примеры или упражнения в новые файлы исходного кода cpp в этом каталоге. Поэтому я не знаю имена файлов перед началом работы.
Теперь я хочу сделать,
Предположим, что я закодировал новый файл с именем facedetect.cpp
в моей директории opencv
, и, если я позвоню, сделайте так:
make facedetect
тогда я хочу сделать для выполнения следующей команды для меня
g++ `pkg-config --cflags opencv` facedetect.cpp -o facedetect `pkg-config --libs opencv`
так что всякий раз, когда я создаю новый файл с именем abc.cpp, я буду выполнять make abc
так что я могу запустить
$ ./abc
в моей командной строке для проверки моего abc.cpp
Пожалуйста, дайте этот файл make, чтобы я мог сохранить разочарование в том, чтобы печатать эту длинную команду каждый раз.
PS: У меня есть Googled для получения справки об этом и нашел this в использовании CMake, но я не мог понять что это делает. Пожалуйста, также объясните, как я могу использовать CMake для одной и той же задачи.