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

Qt 静态库链接问题

最近在工程项目中,遇到qt在使用静态库时,总是不能链接的问题。不是只有一个静态库,而是多个静态库,嵌套依赖,不是单层结构。操作系统为某麒麟系统。比如静态库名称为MyLib,那么在MyLib的pro文件中应该加入下列一行,同时修改导出宏为空

CONFIG += staticlib 
DEFINES+= INSIDE_MYLIB

同时应该在某个头文件中定义

#ifdef MYLIB_STATIC
#define MYLIB_EXPORT 
#else
///...动态库导出定义
#endif

在使用静态库的app或则dll工程中增加如下代码行:

LIBS+=-L$$XXX/XXX  -lMyLib

PRE_TARGETDEPS+=$$XXX/XXX/libMyLib.a

原则上觉得上述代码可行,可是当静态库层次较多时,就是链接错误,怀疑过依赖顺序。问题是同样的代码和配置方式,windows就可以顺利编译,某麒麟就是不行。最终定位到:pro文件少了一个关键。在静态库pro文件中增加如下定义:

CONFIG+=create_prl

在调用静态库的app或dll的pro文件中增加如下定义:

CONFIG+=link_prl

至此完美解决问题。我自己因为只想生产一个app,因此只在app中增加了link_prl。


http://www.kler.cn/news/358866.html

相关文章:

  • 大模型应用涌现出的新工作机会-红队测试Red-teaming
  • k8s备份恢复工具--velero
  • 解锁新玩法 | 迅为龙芯3A5000升级UEFI,全面支持银河麒麟系统
  • 数据结构-排序算法
  • 企业搜索精排总结
  • C++中的继承(1)
  • 数组和字符串
  • MySQL的索引类型有哪些?
  • 基于Springboot+Vue的高校实验室智能管理系统(含源码数据库)
  • 上海媒体公关-邀请媒体现场报道专访宣传
  • 机器学习和深度学习之间区别和联系
  • STM32 ADC介绍
  • 代理模式、BigDecimal详解
  • OpenCL 在命令行中clinfo 信息
  • 弛张振荡器电路
  • 微信小程序-页面通信
  • 架构设计笔记-19-大数据架构设计理论与实践
  • 豆包大模型接口调用
  • 【合集】GPT国内外免费在线AI大模型,持续更新!
  • 【厦大主办,EI检索】2024年计算机视觉与图像处理国际学术会议 (CVIP 2024,11月15-17日)