如何在QT中链接来自另一个库的库

时间:2012-04-12 17:58:10

标签: windows qt hyperlink

例如:

lib1它是lib1路径中的库

lib2它是lib2路径中依赖lib1的库,意思是:

lib2 .pro文件包含:

LIBS + = -L ../ lib1 -llib1

INCLUDEPATH + = ../ lib1

测试它是依赖于lib2的测试路径中的可执行文件,这意味着:

测试.pro文件有:

LIBS + = -L ../ lib2 -llib2

INCLUDEPATH + = ../ lib2

我正常构建lib1和lib2但是当我尝试构建测试时,我在Windows上遇到此错误(但不是在MAC上):

在函数'lib2中的函数'

undefined reference to 'function in lib1'

1 个答案:

答案 0 :(得分:1)

您还需要添加win32:LIBS += -L../lib1 -llib1来测试.pro文件。

Windows要求在链接时解析所有符号,因此,如果test需要lib2,则lib1需要lib2lib1与测试相关联。

Unixes(MacOSx,Linux,...)可以使用不可解析的符号链接库,因此test在加载时只需要lib1