前言
- 本章讲述实现本项目实现过程中遇到的QGis二次开发库版本和Qt以及其他动态库的版本匹配问题
问题复现
- 本项目是要作为一个子模块集成到用户的项目中
- 本项目最初的开发环境为QGis3.28+Qt5.15.2,而当时并未问清楚用户开发环境
- 所以交付给用户之后,出现了类似下图的问题
- 出现该问题后才知道用户的Qt版本为Qt5.9.6
"无法定位程序输入点"原因
- 生成exe时所使用的lib文件的版本,和在运行exe时所调用的dll的版本不一致。
- 可以参考stackoverflow的一个帖子The procedure entry point could not be located in the dynamic link library Core.dll
you don’t have multiple versions of ludocore.dll on your system, do you? Procedure entry points errors usually mean: you compiled your project against ludocore.lib version x, and when running th