笔者在该链接的指导下配置OpenCV时的第7步编译环节多次报错如上,解决方案如下:一文解决VS Code安装、C++环境配置、OpenCV配置_opencv安装教程visual code-CSDN博客
1.在编译gcc时如果报错信息只有一句:No such file or directory,而没有提示缺少哪些文件和文件夹,那么只需要在cmake.gui界面搜索OPENCV_ENABLE_ALLOCATOR_STATS,把对勾去掉,然后重新Configure和Generate就可以了。
2.如果编译gcc报错信息除了上面那一句,还明确了缺少哪个文件夹,如
gcc: error: Files\opencv\sources\3rdparty\quirc\include: No such file or directory gcc: error: Files\: No such file or directory
gcc: error: \(x86\)\opencv\build\x64\MinGW\3rdparty\libtiff: No such file or directory
出现这种错误首先要看一下到底有没有指定文件,如果有但是编译的时候没有找到,通常是因为路径中包含空格和特殊字符,导致编译器无法识别,笔者出现这种报错的原因是因为路径有空格,如何修改路径并且编译器能识别到呢?要回到最开始笔者给的链接的第6步,把opencv文件复制到一个新的不含无效字符的路径中,然后重新configure和generate,修改以后的路径如下:
3. 经过上一步的排查以后,报错信息少了很多,但是依然有一行报错:
gcc: error: Files\Anaconda3\Library\include\openjpeg-2.3: No such file or directory
这是因为基于CMake编译opencv需要用到python环境,笔者使用的是基于Anaconda3的python环境,Anaconda3的安装路径里也有空格,所以这里识别不到。解决方案是把Anaconda3整个文件复制粘贴到一个新的有效路径上,然后在cmake.gui界面找到OpenJPEG_DIR,修改后面的路径为新的有效路径,最后再次Configure和Generate。
4. 经过上面三步排查,重新编译opencv,就成功了