Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ mingw32 make.exe[3]:***[CMakeFiles\myAnswerCpp.dir\build.make:102:myAnswerCpp.exe]错误1_C++_Opencv_Cmake_Mingw - Fatal编程技术网

C++ mingw32 make.exe[3]:***[CMakeFiles\myAnswerCpp.dir\build.make:102:myAnswerCpp.exe]错误1

C++ mingw32 make.exe[3]:***[CMakeFiles\myAnswerCpp.dir\build.make:102:myAnswerCpp.exe]错误1,c++,opencv,cmake,mingw,C++,Opencv,Cmake,Mingw,我使用vscode、cmake在Windows中编译opencv项目。我在构建时遇到了一个问题。我很困惑 之前有一个错误,因为OpenCV没有生成完成。完全构建后,我将我的CMakeLists.txt、set(OpenCV\u DIR D:/OpenCV/OpenCV/sources/build)更改为set(OpenCV\u DIR D:/OpenCV/OpenCV/build/x64/vc15/lib)。但也有一些新的错误 这是我的CMakeLists.txt PROJECT(myAnswe

我使用vscode、cmake在Windows中编译opencv项目。我在构建时遇到了一个问题。我很困惑

之前有一个错误,因为OpenCV没有生成完成。完全构建后,我将我的CMakeLists.txt、
set(OpenCV\u DIR D:/OpenCV/OpenCV/sources/build)
更改为
set(OpenCV\u DIR D:/OpenCV/OpenCV/build/x64/vc15/lib)
。但也有一些新的错误

这是我的CMakeLists.txt

PROJECT(myAnswerCpp)
cmake_minimum_required(VERSION 3.5)
set(OpenCV_DIR D:/OpenCV/opencv/build/x64/vc15/lib)
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(myAnswerCpp myAnswerCpp1.cpp)
link_directories(${OpenCV_LIBRARY_DIRS})
target_link_libraries(myAnswerCpp ${OpenCV_LIBS})
这是我的测试代码

#include <iostream>
#include <opencv2/opencv.hpp>

using namespace std;
using namespace cv;

int main(){
    Mat src = imread("C:/Users/87689/Desktop/bit.JPG", IMREAD_COLOR );
    imshow("bit",src);
    waitKey(0);
    return 0;
}
#包括
#包括
使用名称空间std;
使用名称空间cv;
int main(){
Mat src=imread(“C:/Users/87689/Desktop/bit.JPG”,imread_COLOR);
imshow(“位”,src);
等待键(0);
返回0;
}
这是输出信息

[build] Starting build
[proc] Executing command: D:\CMake\bin\cmake.EXE --build d:/ImageProcessing/myAnswerCpp/build --config Debug --target myAnswerCpp -- -j 6
[build] [ 50%] Linking CXX executable myAnswerCpp.exe
[build] CMakeFiles\myAnswerCpp.dir/objects.a(myAnswerCpp1.cpp.obj): In function `main':
[build] D:/ImageProcessing/myAnswerCpp/myAnswerCpp1.cpp:14: undefined reference to `cv::imread(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)'
[build] D:/ImageProcessing/myAnswerCpp/myAnswerCpp1.cpp:15: undefined reference to `cv::imshow(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cv::_InputArray const&)'
[build] D:/ImageProcessing/myAnswerCpp/myAnswerCpp1.cpp:16: undefined reference to `cv::waitKey(int)'
[build] CMakeFiles\myAnswerCpp.dir/objects.a(myAnswerCpp1.cpp.obj): In function `cv::Mat::~Mat()':
[build] D:/OpenCV/opencv/build/include/opencv2/core/mat.inl.hpp:739: undefined reference to `cv::fastFree(void*)'
[build] CMakeFiles\myAnswerCpp.dir/objects.a(myAnswerCpp1.cpp.obj): In function `cv::Mat::release()':
[build] D:/OpenCV/opencv/build/include/opencv2/core/mat.inl.hpp:851: undefined reference to `cv::Mat::deallocate()'
[build] collect2.exe: error: ld returned 1 exit status
[build] mingw32-make.exe[3]: *** [CMakeFiles\myAnswerCpp.dir\build.make:102: myAnswerCpp.exe] Error 1
[build] mingw32-make.exe[2]: *** [CMakeFiles\Makefile2:75: CMakeFiles/myAnswerCpp.dir/all] Error 2
[build] mingw32-make.exe[1]: *** [CMakeFiles\Makefile2:87: CMakeFiles/myAnswerCpp.dir/rule] Error 2
[build] mingw32-make.exe: *** [Makefile:117: myAnswerCpp] Error 2
[build] Build finished with exit code 2
[build]开始构建
[proc]执行命令:D:\CMake\bin\CMake.EXE--build D:/ImageProcessing/myAnswerCpp/build--config Debug--target myAnswerCpp--j 6
[build][50%]链接CXX可执行文件myAnswerCpp.exe
[build]cmakfiles\myAnswerCpp.dir/objects.a(myAnswerCpp1.cpp.obj):在函数“main”中:
[build]D:/ImageProcessing/myAnswerCpp/myAnswerCpp1.cpp:14:cv::imread(std:uu cx11::basic_string const&,int)的未定义引用
[build]D:/ImageProcessing/myAnswerCpp/myAnswerCpp1.cpp:15:cv::imshow(std:u cx11::basic_string const&,cv:_inputarrayconst&)的未定义引用
[build]D:/ImageProcessing/myAnswerCpp/myAnswerCpp1.cpp:16:未定义对“cv::waitKey(int)”的引用
[build]cmakfiles\myAnswerCpp.dir/objects.a(myAnswerCpp1.cpp.obj):在函数“cv::Mat::~Mat()”中:
[build]D:/OpenCV/OpenCV/build/include/opencv2/core/mat.inl.hpp:739:对'cv::fastFree(void*)的未定义引用
[build]cmakfiles\myAnswerCpp.dir/objects.a(myAnswerCpp1.cpp.obj):在函数'cv::Mat::release()'中:
[build]D:/OpenCV/OpenCV/build/include/opencv2/core/mat.inl.hpp:851:对'cv::mat::deallocate()的未定义引用
[build]collect2.exe:错误:ld返回1退出状态
[build]mingw32 make.exe[3]:***[CMakeFiles\myAnswerCpp.dir\build.make:102:myAnswerCpp.exe]错误1
[build]mingw32 make.exe[2]:***[CMakeFiles\Makefile2:75:CMakeFiles/myAnswerCpp.dir/all]错误2
[build]mingw32 make.exe[1]:***[CMakeFiles\Makefile2:87:CMakeFiles/myAnswerCpp.dir/rule]错误2
[build]mingw32-make.exe:**[Makefile:117:myAnswerCpp]错误2
[生成]生成已完成,退出代码为2

请帮我解决错误。多谢各位

变量
OpenCV\u DIR
应该引用已安装的OpenCV,但是分配给该变量的目录的
build
组件表明您刚刚构建了OpenCV。OpenCV是否完全在您的计算机上构建?例如,您的计算机上是否存在文件
D:/OpenCV/OpenCV/sources/build/lib/libopencv_dnn411.dll.a
?谢谢大家。完全构建后,我将我的CMakeLists.txt、
set(OpenCV\u DIR D:/OpenCV/OpenCV/sources/build)
更改为
set(OpenCV\u DIR D:/OpenCV/OpenCV/build/x64/vc15/lib)
。但也有一些新的错误。