场景

编译OpenCvSharpExtern项目Debug x64动态库,出错提示如下:

1>opencv_imgcodecs440d.lib(loadsave.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_image_destroy,函数 "public: void __cdecl cv::detail::OpjImageDeleter::operator()(struct opj_image *)const " (??ROpjImageDeleter@detail@cv@@QEBAXPEAUopj_image@@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2001: 无法解析的外部符号 __imp_opj_image_destroy
1>opencv_imgcodecs440d.lib(loadsave.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_stream_destroy,函数 "public: void __cdecl cv::detail::OpjStreamDeleter::operator()(void * *)const " (??ROpjStreamDeleter@detail@cv@@QEBAXPEAPEAX@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2001: 无法解析的外部符号 __imp_opj_stream_destroy
1>opencv_imgcodecs440d.lib(loadsave.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_destroy_codec,函数 "public: void __cdecl cv::detail::OpjCodecDeleter::operator()(void * *)const " (??ROpjCodecDeleter@detail@cv@@QEBAXPEAPEAX@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2001: 无法解析的外部符号 __imp_opj_destroy_codec
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_image_create,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjEncoder::write(class cv::Mat const &,class std::vector > const &)" (?write@Jpeg2KOpjEncoder@cv@@UEAA_NAEBVMat@2@AEBV?$vector@HV?$allocator@H@std@@@std@@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_stream_default_create,函数 "class std::unique_ptr __cdecl cv::`anonymous namespace'::opjCreateBufferInputStream(struct cv::detail::OpjMemoryBuffer *)" (?opjCreateBufferInputStream@?A0x8b983c6d@cv@@YA?AV?$unique_ptr@PEAXUOpjStreamDeleter@detail@cv@@@std@@PEAUOpjMemoryBuffer@detail@2@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_stream_set_read_function,函数 "class std::unique_ptr __cdecl cv::`anonymous namespace'::opjCreateBufferInputStream(struct cv::detail::OpjMemoryBuffer *)" (?opjCreateBufferInputStream@?A0x8b983c6d@cv@@YA?AV?$unique_ptr@PEAXUOpjStreamDeleter@detail@cv@@@std@@PEAUOpjMemoryBuffer@detail@2@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_stream_set_skip_function,函数 "class std::unique_ptr __cdecl cv::`anonymous namespace'::opjCreateBufferInputStream(struct cv::detail::OpjMemoryBuffer *)" (?opjCreateBufferInputStream@?A0x8b983c6d@cv@@YA?AV?$unique_ptr@PEAXUOpjStreamDeleter@detail@cv@@@std@@PEAUOpjMemoryBuffer@detail@2@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_stream_set_seek_function,函数 "class std::unique_ptr __cdecl cv::`anonymous namespace'::opjCreateBufferInputStream(struct cv::detail::OpjMemoryBuffer *)" (?opjCreateBufferInputStream@?A0x8b983c6d@cv@@YA?AV?$unique_ptr@PEAXUOpjStreamDeleter@detail@cv@@@std@@PEAUOpjMemoryBuffer@detail@2@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_stream_set_user_data,函数 "class std::unique_ptr __cdecl cv::`anonymous namespace'::opjCreateBufferInputStream(struct cv::detail::OpjMemoryBuffer *)" (?opjCreateBufferInputStream@?A0x8b983c6d@cv@@YA?AV?$unique_ptr@PEAXUOpjStreamDeleter@detail@cv@@@std@@PEAUOpjMemoryBuffer@detail@2@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_stream_set_user_data_length,函数 "class std::unique_ptr __cdecl cv::`anonymous namespace'::opjCreateBufferInputStream(struct cv::detail::OpjMemoryBuffer *)" (?opjCreateBufferInputStream@?A0x8b983c6d@cv@@YA?AV?$unique_ptr@PEAXUOpjStreamDeleter@detail@cv@@@std@@PEAUOpjMemoryBuffer@detail@2@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_stream_create_default_file_stream,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjDecoder::readHeader(void)" (?readHeader@Jpeg2KOpjDecoder@cv@@UEAA_NXZ) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_set_warning_handler,函数 "void __cdecl cv::`anonymous namespace'::setupLogCallbacks(void * *)" (?setupLogCallbacks@?A0x8b983c6d@cv@@YAXPEAPEAX@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_set_error_handler,函数 "void __cdecl cv::`anonymous namespace'::setupLogCallbacks(void * *)" (?setupLogCallbacks@?A0x8b983c6d@cv@@YAXPEAPEAX@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_create_decompress,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjDecoder::readHeader(void)" (?readHeader@Jpeg2KOpjDecoder@cv@@UEAA_NXZ) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_set_default_decoder_parameters,函数 "struct opj_dparameters __cdecl cv::`anonymous namespace'::setupDecoderParameters(void)" (?setupDecoderParameters@?A0x8b983c6d@cv@@YA?AUopj_dparameters@@XZ) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_setup_decoder,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjDecoder::readHeader(void)" (?readHeader@Jpeg2KOpjDecoder@cv@@UEAA_NXZ) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_read_header,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjDecoder::readHeader(void)" (?readHeader@Jpeg2KOpjDecoder@cv@@UEAA_NXZ) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_decode,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjDecoder::readData(class cv::Mat &)" (?readData@Jpeg2KOpjDecoder@cv@@UEAA_NAEAVMat@2@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_create_compress,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjEncoder::write(class cv::Mat const &,class std::vector > const &)" (?write@Jpeg2KOpjEncoder@cv@@UEAA_NAEBVMat@2@AEBV?$vector@HV?$allocator@H@std@@@std@@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_set_default_encoder_parameters,函数 "struct opj_cparameters __cdecl cv::`anonymous namespace'::setupEncoderParameters(class std::vector > const &)" (?setupEncoderParameters@?A0x8b983c6d@cv@@YA?AUopj_cparameters@@AEBV?$vector@HV?$allocator@H@std@@@std@@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_setup_encoder,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjEncoder::write(class cv::Mat const &,class std::vector > const &)" (?write@Jpeg2KOpjEncoder@cv@@UEAA_NAEBVMat@2@AEBV?$vector@HV?$allocator@H@std@@@std@@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_start_compress,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjEncoder::write(class cv::Mat const &,class std::vector > const &)" (?write@Jpeg2KOpjEncoder@cv@@UEAA_NAEBVMat@2@AEBV?$vector@HV?$allocator@H@std@@@std@@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_end_compress,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjEncoder::write(class cv::Mat const &,class std::vector > const &)" (?write@Jpeg2KOpjEncoder@cv@@UEAA_NAEBVMat@2@AEBV?$vector@HV?$allocator@H@std@@@std@@@Z) 中引用了该符号
1>opencv_imgcodecs440d.lib(grfmt_jpeg2000_openjpeg.obj) : error LNK2019: 无法解析的外部符号 __imp_opj_encode,函数 "public: virtual bool __cdecl cv::Jpeg2KOpjEncoder::write(class cv::Mat const &,class std::vector > const &)" (?write@Jpeg2KOpjEncoder@cv@@UEAA_NAEBVMat@2@AEBV?$vector@HV?$allocator@H@std@@@std@@@Z) 中引用了该符号

解决方案

通过CMake打开OpenCV的工程配置项,搜索WITH_OPENJPEG,然后去掉勾选WITH_OPENJPEG,重新生成解决方案,重新编译生成静态库opencv_imgcodecs440d.lib,然后在工程OpenCvSharpExtern中链接

尝试

下载openjpeg-2.3.1源码,编译静态库,链接仍然失败

OpenCV 无法解析的外部符号 __imp_opj_image_destroy解决方案相关推荐

  1. C++ error LNK2019: 无法解析的外部符号 错误解决方案

    今天在实现类模板特例化的时候遇到一个问题,就是把类模板函数实现放到类的cpp文件中,然后在main函数中使用这个类的时候,就会出现无法解析的外部符号:函数名(xxxx)等错误,那么出现这个错误的原因是 ...

  2. vs报错“错误 LNK2019 无法解析的外部符号”的几种原因及解决方案

      运行vs程序的时候,报错严重性 代码 说明 项目 文件 行 禁止显示状态 错误 LNK2019 无法解析的外部符号 "__declspec(dllimport) public: void ...

  3. 关于各种无法解析的外部符号问题的相应解决方案【转】

    关于各种无法解析的外部符号问题的相应解决方案[转] 参考文章: (1)关于各种无法解析的外部符号问题的相应解决方案[转] (2)https://www.cnblogs.com/ningskyer/ar ...

  4. OpenCV编程-无法解析的外部符号 void __cdecl cv::cvtColor

    运行环境:VS2012   &&   OpenCV2.4.8 错误提示: 1>test1.obj : error LNK2019: 无法解析的外部符号 "void __ ...

  5. OpenCV_Viz——OpenCV中Viz的模块编译的无法解析的外部符号BUG

    写在前面 由于实验室需要,需要重新编译医学图像第三方库全家桶.这里就需要编译OpenCV,而编译后查看编译的库文件中缺少一个opencv_viz2413d.lib文件(没错,这里可以看出我使用的Ope ...

  6. QT使用windowsAPI函数提示error LNK2019: 无法解析的外部符号 该符号在函数 _main 中被引用解决方案

    2020博客之星年度总评选进行中:请为74号的狗子投上宝贵的一票! 我的投票地址:点击为我投票       在使用windowsAPI函数的过程中,已经加入了<windows.h>头文件, ...

  7. 学习笔记-----C++模板类中友元函数重载输出运算符时提示无法解析的外部符号解决方案

    今天在写单向链表实现线性表的时候打算重载输出运算符用来将线性表输出,结果无奈又遇到了问题. 大致代码如下 <pre name="code" class="cpp&q ...

  8. C/C++ 无法解析的外部符号解决方案

    //0 类的成员函数没有实现就调用 //1 调用没有编译生成cpp 的函数 //2 没有加载lib //3 最重要的就是有声明无定义 //4 在包含windows头文件冲突的库没有编译成lib或者dl ...

  9. opencv出现无法解析的外部符号问题

    Point2f 出现未知重写符号.变量不是成员的类等问题 原因:未包含 #include <opencv2/core/core.hpp> using namespace cv: 无法解析的 ...

最新文章

  1. 指针小白:修改*p与p会对相应的地址的变量产生什么影响?各个变量指针的长度为多少?...
  2. [转载] 人类智能PK人工智能——06 计算智能
  3. 小功能 获取一段汉字的拼音首字母
  4. centos 一键安装ftp 配置_CentOS快速搭建FTP(初级-四步)
  5. 在Java中VO , PO , BO , QO, DAO ,POJO是什么意思
  6. 剑指offer:对称的二叉树(镜像,递归,非递归DFS栈+BFS队列)
  7. Lua之table(表)
  8. xml property标签注入一个类变量_Spring-06-依赖注入(DI)
  9. python实现随机产生数据矩阵,将txt文件写入Excel中以及转置后写入Excel中
  10. 小观matlab插值函数
  11. WIN7 64 安装串口驱动和mini2440USB驱动
  12. iOS开发-极光推送SDK使用笔记
  13. 百度网盘网页端的视频如何调节播放倍速?
  14. 电子制造企业如何避免仓库出货异常,导致客户大量退货?
  15. 论坛没落了吗?传统BBS(论坛)何去何从?
  16. Linux调试排错命令
  17. **LeetCode 30. Substring with Concatenation of All Words
  18. QQ三方登录创建网站应用审核不通过原因
  19. 腾讯QQ到底有多强大?
  20. 程序员需要达到什么水平才能拿到20K?

热门文章

  1. 关于淘宝店铺运营的一点思考
  2. Filter过滤器的生命周期和工作原理
  3. java umeditor使用,百度UMeditor富文本编辑器java使用
  4. 技巧:永久屏蔽谷歌浏览器上的网站通知功能
  5. go 时间戳(秒、毫秒、纳秒)
  6. 初识Nginx及编译安装Nginx
  7. Vue-----Vue本地应用篇(2)
  8. t450+装linux+网卡驱动,ubuntu14.04如何手动安装无线网卡驱动(ThinkPad T450)
  9. 联想台式计算机出厂号在哪里,联想电脑怎么查看主机编号_联想电脑编号在哪里【图】...
  10. idea如何import_导入项目