Qt undefined对3rdparty软件库的引用

时间:2015-12-08 11:06:11

标签: c++ qt qmake

我在Qt应用程序中使用第三方库函数,但它报告错误,例如" undefined reference to bp_attach collect2 : error: ld returned 1 exit status"。

我已经从源代码构建第三方库(ion-dtn)并且make& make install。我确信它已成功安装在我的Ubuntu系统中。

我已将其头文件"bp.h"包含在内,而Qt并没有抱怨这一点。但是当我编译时,我得到了上面提到的错误。这是我的.pro文件:

QT       += core gui
QT       += network

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = MYUDP
TEMPLATE = app

INCLUDEPATH += /usr/local/include/
LIBS += -L /usr/local/lib

PKGCONFIG +=ion-d
SOURCES += main.cpp\
        myudp.cpp

HEADERS  += myudp.h

FORMS    += myudp.ui

路径" bp.h"声明bp_attach函数的地方是/usr/local/include/bp.h

第三方库的库安装在/usr/local/lib中,并在.pro中定义。

2 个答案:

答案 0 :(得分:2)

虽然您告诉QMake在哪里可以找到标题和库,但您需要指定需要链接的库。相当于LDLIBS的QMake为LIBS

INCLUDEPATH += /usr/local/include
LIBS += -lbp

答案 1 :(得分:1)

这可能会有所帮助:

LIBS += -L /usr/local/lib -l**You_library_Name**