【解决】undefined reference to `cv::imshow(cv::String const&, cv::_InputArray const&)‘
·
目录
这个错误提示undefined reference to 'cv::imshow(cv::String const&, cv::_InputArray const&)'通常意味着链接器在尝试构建程序时没有找到cv::imshow函数的定义。这通常与OpenCV库的链接有关。以下是一些可能的解决步骤:
确保OpenCV库已正确安装
确保系统上已经安装了OpenCV库,并且版本与代码兼容。
ubuntu命令行安装:sudo apt install libopencv-dev python3-opencv
检查编译命令
确保你的编译命令中包含了正确的链接器标志来链接OpenCV库。例如,如果你使用的是g++,你可能需要添加类似-lopencv_core -lopencv_highgui -lopencv_imgproc等标志(具体取决于你使用的OpenCV模块)。
确认项目已链接opencv库
在编译或链接设置中,确保已经添加了opencv库。这通常涉及到设置链接器(linker)以包含opencv的库文件(如.so、.dll或.a文件)。具体步骤取决于使用的开发环境(如cmake、makefile、ide等)。对于cmake项目,可能需要在cmakelists.txt中添加类似下面的代码:
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(your_program your_program.cpp)
target_link_libraries(your_program ${OpenCV_LIBS})
检查OpenCV版本
确保你使用的OpenCV版本与你的代码兼容。有时候,新版本的OpenCV可能会更改API,导致旧代码无法编译。
更多推荐
所有评论(0)