Windows pro组合库

Windows pro组合库,windows,qt,mingw,qmake,.a,Windows,Qt,Mingw,Qmake,.a,我有一个subdirs Qt项目,包括: 一个外部(不是我做的)库 使用外部库的内部(由我制作)库 使用内部库的应用程序 我在Windows上使用mingw作为编译器 在编译库时,我没有任何问题,一切似乎都很好 但是当我编译应用程序时,我得到一个ld错误:对外部lib函数的未定义引用(从内部libs函数调用) 我认为这是因为在编译内部库时,这些方法没有被调用,因此没有加载,这就是它找不到它们的原因 在编译内部库时,是否有方法组合这两个库(或者至少强制编译器/链接器解析符号)?我找到了解决问题

我有一个subdirs Qt项目,包括:

  • 一个外部(不是我做的)库
  • 使用外部库的内部(由我制作)库
  • 使用内部库的应用程序
我在Windows上使用mingw作为编译器

在编译库时,我没有任何问题,一切似乎都很好

但是当我编译应用程序时,我得到一个ld错误:对外部lib函数的未定义引用(从内部libs函数调用)

我认为这是因为在编译内部库时,这些方法没有被调用,因此没有加载,这就是它找不到它们的原因


在编译内部库时,是否有方法组合这两个库(或者至少强制编译器/链接器解析符号)?

我找到了解决问题的方法

在我的内部库的pro文件中:

  • 我将目标值从
    internal\u lib
    更改为
    internal\u lib\u unlinked
  • 我添加了一个新行
    QMAKE\u POST\u LINK+=ar crsT$$DESTDIR/libinternal\u lib.a$$DESTDIR/libinternal\u lib\u unlinked.a路径/to/libexternal\u lib.a
这是一个骇客,但它的工作

幸亏