/mnt/hgfs/VMShare/BuildTest/mainwindow.cpp:23: error: undefined reference to `cv::imread(cv::String const&, int)'
时间: 2024-01-31 09:04:08 浏览: 46
centos安装jdk1.8时出现没有/lib/ld-linux.so.2:这个文件的原因分析
5星 · 资源好评率100%
这个错误通常表示你在使用OpenCV库中的函数,但你没有正确链接OpenCV库。
在C++中,你需要在代码中调用库中的函数,同时告诉编译器去哪里查找库文件。这通常通过在编译时添加链接器标志来完成。
对于OpenCV库,你需要添加以下链接器标志:
```
-lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs
```
这些标志告诉编译器链接OpenCV核心、高级GUI、图像处理和图像编解码库。
如果你使用CMake构建你的项目,你可以在CMakeLists.txt文件中添加以下行来链接OpenCV:
```
find_package(OpenCV REQUIRED)
target_link_libraries(your_executable_name ${OpenCV_LIBS})
```
其中 "your_executable_name" 是你的可执行文件的名称。
阅读全文