Qt静态库未定义引用

Qt static libraries undefined reference

我有这种情况:

在B.pro我有

LIBS += -lA

在C.pro我有

LIBS += -lA

在app.pro我有

LIBS += -lA
LIBS += -lB
LIBS += -lC

但是当我编译时,链接器给我在 libA 类 上未定义的引用,这些引用在 libB 和 libC 中使用。

我该如何解决这个问题?谢谢

LIBS += -lA 在 B.pro 和 C.pro 中被忽略。该选项仅适用于链接器,即构建共享库或可执行二进制文件。

要解决未定义引用的问题,请重新排序 app.pro 中的库。依赖库的顺序很重要。参见 The order in which interdependent linked libraries are specified is wrong.

LIBS += -lB
LIBS += -lC
LIBS += -lA