mingw32-ошибка установки «нескольких целевых шаблонов» при установке opencv

#opencv #makefile #cmake #mingw #mingw32

Вопрос:

Я пытался создать OpenCV-4.5.1 из исходного кода с помощью CMake 3.20.0-rc3. Я мог бы запустить mingw32-make после настройки и создания файлов cmake , но эта ошибка всегда появляется при попытке запуска mingw32-make install .

введите описание изображения здесь

 D:build1>mingw32-make install
3rdparty/openjpeg/openjp2/CMakeFiles/libopenjp2.dir/compiler_depend.make:4: *** multiple target patterns.  Stop.
mingw32-make[1]: *** [CMakeFilesMakefile2:3433: 3rdparty/openjpeg/openjp2/CMakeFiles/libopenjp2.dir/all] Error 2
mingw32-make: *** [makefile:165: all] Error 2
 

Я попытался просмотреть файлы создания, показанные в cmd, но они очень длинные, и я действительно понятия не имею, что искать. Судя по поискам в Google, которые я провел, похоже, что это связано с синтаксической ошибкой в файлах makefile. Вы можете, ребята, помочь мне с этим?

Редактировать: первые 5 строк 3-й части/openjpeg/openjp2/CMakeFiles/libopenjp2.dir/compiler_depend.make

 # CMAKE generated file: DO NOT EDIT!
# Generated by "MinGW Makefiles" Generator, CMake Version 3.20

3rdparty/openjpeg/openjp2/CMakeFiles/libopenjp2.dir/bio.c.obj: C:/Users/XXXX/Downloads/opencv-4.5.1/3rdparty/openjpeg/openjp2/bio.c 
  C\:\Users\XXXX\Downloads\opencv-4.5.1\3rdparty\openjpeg\openjp2\bio.c 
 

Комментарии:

1. Пожалуйста, не публикуйте скриншоты. Их нельзя скопировать/вставить, и их нельзя искать. Пожалуйста, используйте копирование/вставку текста и используйте функции форматирования, чтобы убедиться, что они читабельны.

2. Не глядя ни на что, эти пакеты, скорее всего, предназначены для компиляции в системе UNIX (Linux или macOS), а не в системе Windows. Ошибка, которую вы видите, является очень распространенной проблемой при попытке использовать файлы makefile с путями в стиле Windows (пути UNIX не содержат букв дисков, таких как C: и т. Д.). Вам следует ознакомиться с инструкциями пакета для получения специальных инструкций по компиляции в Windows. Скорее всего, вам потребуется использовать cygwin или какую-либо другую среду на базе UNIX, а не cmd.com.

3. отредактировал сообщение, чтобы включить сообщение об ошибке

4. Имеет ли смысл, если я попробую это сделать с помощью msys?

5. «Я попытался просмотреть файлы создания, показанные в cmd …» — Пожалуйста, добавьте в свой пост точную строку 4 из файла 3rdparty/openjpeg/openjp2/CMakeFiles/libopenjp2.dir/compiler_depend.make (сообщение об ошибке относится именно к этой строке).