当前位置: 首页 > article >正文

【QT/MinGW/.a->.lib】如何将一个用QT的MingGW编译dll项目出的dll文件导出一份.lib文件给其他项目链接动态库用

如果你也是只有.dll和.a文件,而在寻觅.lib文件到底该如何生成出来,那么本文就适合你。

首先我们开一个QT的C++DLL项目,然后选择用MinGW构建。
构建出来的成果应该类似下面这些文件
在这里插入图片描述

最简单的会有一个.o文件,一个.dll文件和一个.a文件。

随后我们编写一份.def文件,名字一般就是dll的名字,格式如下

LIBRARY FAAC
EXPORTS 
faacEncGetVersion
faacEncGetCurrentConfiguration
faacEncSetConfiguration
faacEncOpen
faacEncGetDecoderSpecificInfo
faacEncEncode
faacEncClose

这上面,第一行的FAAC是你的dll文件名,不过不用带后缀
然后EXPORTS之后的那几行都是你要导出的函数名称。

之后你可以在你的QT安装目录下搜索你用的MinGW所在的目录下的dlltoll.exe程序
比如我用MinGW是mingw530_32,那么我自行搜索找到的路径就是E:\Qt\Qt5.9.0\Tools\mingw530_32\bin\dlltool.exe

找到你的路径后,打开cmd写入以下命令

E:\Qt\Qt5.9.0\Tools\mingw530_32\bin\dlltool.exe -d FAAC.def -l FAAC.lib -D FAAC.dll

FAAC换成你的和DLL一样的名字,然后生成后的结果就如下图所示
在这里插入图片描述

你想要的.lib文件就这么出现了,完。


http://www.kler.cn/a/416841.html

相关文章:

  • vue超过三行显示省略号和查看更多按钮
  • 【C++笔记】位图和布隆过滤器
  • vue中如何获取public路径
  • 前端页面或弹窗在线预览文件的N种方式
  • 肿瘤微环境中单细胞的泛癌分类
  • yt6801 ubuntu有线连接驱动安装
  • docker启动容器,语句名词解释
  • day21:jumpserver配置与搭建
  • 【bug】AttributeError: module ‘openai‘ has no attribute ‘error’
  • 第6章 元素应用CSS
  • 信息与网络安全笔记2
  • 常见靶场的搭建
  • 去中心化物理基础设施网络(DePIN):重塑未来的基石
  • 分析 系统滴答时钟(tickClock),设置72MHz系统周期,如何实现1毫秒的系统时间?
  • SpringBoot源码-spring boot启动入口ruan方法主线分析(二)
  • 如何解决 javax.xml.bind.MarshalException: 在 RMI 中,参数或返回值无法被编组的问题?亲测有效的解决方法!
  • spark读取hbase数据
  • XTuner 微调实践微调
  • java——Netty与Tomcat的区别
  • Android习题第7章广播
  • 【力扣热题100】[Java版] 刷题笔记-3. 无重复字符的最长子串
  • 虚拟机VMware安装OpenWrt镜像
  • 零基础学安全--Burp Suite(3)decodor comparer logger模块使用
  • 当新能源遇见低空经济:无人机在光伏领域的创新应用
  • 【网络协议栈】网络层(中)公有IP与私有IP、网络层中的路由(内附手画分析图 简单易懂)
  • 【conda】全面解析 Conda 配置文件:从完整示例到最佳实践