gpt4 book ai didi

c++ - OpenCV:使用 imwrite() 函数时无法编译

转载 作者:太空狗 更新时间:2023-10-29 23:39:26 26 4
gpt4 key购买 nike

在我的第一个简单的 OpenCV 应用程序中,我想保存由 cam 获取的帧,所以我使用 imwrite() 作为教程所说的。问题是我无法编译,因为出现此错误:

Undefined symbols for architecture x86_64:
"cv::imwrite(cv::String const&, cv::_InputArray const&, std::vector<int, std::allocator<int> > const&)", referenced from:
_main in video-87ad7a.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

阅读 SO 中的一些帖子后,我发现这是使用的 C++ 标准库的问题,因此我添加了标志 libstdc++ 但以下内容:

g++ -stdlib=libstdc++ -I/usr/local/include -L/usr/local/lib/ -g -o binary video.cpp -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_features2d -lopencv_calib3d -lopencv_objdetect -lopencv_stitching -lopencv_videoio -lopencv_videostab

没有解决问题。我该怎么办?

更新好像this是解决方案。我不知道我丢失的那该死的旗帜是什么

最佳答案

看起来您缺少 imwrite() 所在的“-lopencv_imgcodecs”。
引用OpenCV imgcodecs头文件here .

关于c++ - OpenCV:使用 imwrite() 函数时无法编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35050480/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com