ZBLOG

1>正在链接对象 1>/usr/bin/ld : error : /home/ztl/projects/HDMIIN/obj/ARM64/Debug/ImageIN.o: undefined reference to symbol '_ZN2cv6resizeERKNS_11_InputArrayERKNS_12_OutputArrayENS_5Size_IiEEddi' 1>/usr/bin/ld : error : /lib/aarch64-linux-gnu/libopencv_im...

你遇到的这个错误信息表明在链接阶段找不到 OpenCV 库中的某个符号,这通常是因为没有正确地链接相关的库。以下是一些可能的解决方法:

  1. 确认已安装 OpenCV: 确保你的系统中已经安装了 OpenCV,并且所需版本与编译时使用的一致。

  2. 添加库路径: 在编译命令中,确保包含了 OpenCV 的库路径。例如,如果你使用 g++ 编译,你可以这样添加:

    g++ -o your_program your_source.o -lopencv_imgproc -lopencv_core
    

    这里 -lopencv_imgproc-lopencv_core 是必需的,因为你正在使用 resize 函数,该函数属于图像处理模块。

  3. 检查库顺序: 链接时,库的顺序很重要。如果一个库依赖于另一个库,那么应该将依赖的库放在前面。例如,确保将 -lopencv_imgproc 放在依赖它的目标文件后面。

  4. CMake配置(如果适用): 如果你使用 CMake 构建项目,请确保在 CMakeLists.txt 中正确设置了 OpenCV 的查找和链接:

    find_package(OpenCV REQUIRED)
    target_link_libraries(your_target ${OpenCV_LIBS})
    
  5. 确认动态链接库: 确保环境变量 LD_LIBRARY_PATH 包含 OpenCV 动态链接库的位置。

  6. 重建项目: 有时问题可能是由于旧的构建文件引起的,所以尝试清理并重新构建你的项目。

根据上述步骤进行检查和修改,应该能帮助你解决这个 undefined reference 的问题。如果问题仍然存在,可以提供更多代码或上下文,以便进一步诊断。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=22207

分享:
扫描分享到社交APP
/usr/bin/ld : error : /lib/aarch64-linux-gnu/libopencv_im...&appkey=&pic=&searchPic=true")' title="分享到新浪微博" class="weibo"> /usr/bin/ld : error : /lib/aarch64-linux-gnu/libopencv_im...")' title="分享到QQ好友" class="qq"> /usr/bin/ld : error : /lib/aarch64-linux-gnu/libopencv_im...")' title="分享到QQ空间" class="qqzone">
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?