test.cpp:(.text+0x6a):对‘cv::imread(std::string const&, int)’未定义的引用

#include <opencv2/opencv.hpp>

using namespace std;

using namespace cv;

int main(int argc, char* argv[])

{

const char* imagename = "gzh.jpg";

Mat img = imread(imagename);


imshow("image", img);

waitKey();

return 0;}
znkz@znkz:~/gzh$ g++ test.cpp -o test

error:

/tmp/ccFRpjXB.o:在函数‘main’中:
test.cpp:(.text+0x6a):对‘cv::imread(std::string const&, int)’未定义的引用
test.cpp:(.text+0x9e):对‘cv::_InputArray::_InputArray(cv::Mat const&)’未定义的引用
test.cpp:(.text+0xe1):对‘cv::imshow(std::string const&, cv::_InputArray const&)’未定义的引用
test.cpp:(.text+0x109):对‘cv::waitKey(int)’未定义的引用
/tmp/ccFRpjXB.o:在函数‘cv::Mat::~Mat()’中:
test.cpp:(.text._ZN2cv3MatD2Ev[_ZN2cv3MatD5Ev]+0x39):对‘cv::fastFree(void*)’未定义的引用
/tmp/ccFRpjXB.o:在函数‘cv::Mat::release()’中:
test.cpp:(.text._ZN2cv3Mat7releaseEv[_ZN2cv3Mat7releaseEv]+0x47):对‘cv::Mat::deallocate()’未定义的引用
collect2: error: ld returned 1 exit status

解决:

znkz@znkz:~/gzh$ g++ test.cpp `pkg-config --cflags --libs opencv` -o test

这是链接器问题。

pkg-config的安装配置及其作用

2、参考

opencv3.2在ubuntu16.04安装,测试程序错误分析

使用 pkg-config 的 –cflags 参数可以给出在编译时所需要的选项,而 –libs 参数可以给出连接时的选项

g++ `pkg-config --cflags opencv` -o test test.cpp `pkg-config --libs opencv`

1、

locate iostream

可以定位头文件位置

/tmp/ccYgsZna.o:在函数‘main’中:
cv_ros-beginner.cpp:(.text+0x37):对‘ros::spin()’未定义的引用
/tmp/ccYgsZna.o:在函数‘image_transport::TransportHints::TransportHints(std::string const&, ros::TransportHints const&, ros::NodeHandle const&, std::string const&)’中:
cv_ros-beginner.cpp:(.text._ZN15image_transport14TransportHintsC2ERKSsRKN3ros14TransportHintsERKNS3_10NodeHandleES2_[_ZN15image_transport14TransportHintsC5ERKSsRKN3ros14TransportHintsERKNS3_10NodeHandleES2_]+0x53):对‘ros::NodeHandle::NodeHandle(ros::NodeHandle const&)’未定义的引用


  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值