QT调用VS生成的lib静态库文件失败原因 您所在的位置:网站首页 mingw调用lib QT调用VS生成的lib静态库文件失败原因

QT调用VS生成的lib静态库文件失败原因

2024-07-02 13:15| 来源: 网络整理| 查看: 265

一、现象:QT中调用VS生成的DLL动态库成功,但调用静态lib库失败,通常提示xxx.a文件未找到

二、原因:首先dll动态库与lib静态库区别在于,调用前者时只是跳转到dll中函数入口地址,函数的具体内容在编译时并不加载,只有运行时才会加载;调用后者则在编译阶段就会加载lib内具体函数实体,这就要求生成lib的编译器与应用程序的编译器相兼容。

QT的编译器一般为MINGW,VS编译器随版本更新一般为VS20XX,二者并不兼容,所以加载不了lib静态库

三、解决方法:1、静态库转为动态库(需源代码)   2、QT编译器设置为VS版本  3、在VS中将静态库lib加一层封装为动态库dll,再QT中调用。

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有