Mingw 版本不对引起的错误

11 篇文章 1 订阅

Qt 找不见名称与ctypes找不见 dll

undefined reference to `__imp__ZN15QGuiApplicationC1ERiPPci’

Clion 使用 TDM-GCC10.3.0 编译 Qt(使用mingw7.3) 时出现错误:

undefined reference to `__imp__ZN15QGuiApplicationC1ERiPPci'

FileNotFoundError: Could not find module ‘xxx.dll’ (or one of its dependencies). Try using the full path with constructor syntax

之后 把Clion 的编译工具链换成了 Qt 的 mingw7.3,再编译 rtsp_parser(KWT项目里的,使用了用 TDM-GCC10.3.0 编译的opencv3.4.16)时,做成 exe 时一切正常,做成dll 让 python 的ctypes 调用时出现异常

(用 np.ctypeslib.load_library("librtsp_parser",".")):

FileNotFoundError: Could not find module 'F:\KWT_tasks\Rtsp_study\rtsp_parser_cpp\cmake-build-debug\librtsp_parser.dll' (or one of its dependencies). Try using the full path with constructor syntax

其实,出现上面这个错误第一时间应该看目录是否正确,依赖是否都放对了位置,是否放全了,还有建议用 numpy 的 np.ctypeslib.load_library("librtsp_parser",".") ,比 ctypes 自带的好。

总结

这两个都是 mingw 版本不对引起的,qt 都用自带的 mingw7.3,后者 rtsp_parser 依然用编译opencv的 TDM-GCC10.3.0 编译出的 dll 就没问题。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值