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