QT,未定义对 `alpr::Alpr::~Alpr()' 的引用

QT, undefined reference to `alpr::Alpr::~Alpr()'

我正在尝试 运行 QT 上的 OpenALPR。我安装了它 here。我可以从终端成功测试它。我在QT的标题中得到了错误。未定义的引用错误是由未链接的库引起的,但我将路径 /usr/lib 下的 libopenalpr.so 添加到 .pro 文件中。为什么我会收到那个错误?

我的 cpp 文件:

#include "alpr.h"
int main()
{
    alpr::Alpr openalpr("us", "etc/openalpr/openalpr.conf");
}

我的专业档案:

QT += core
QT -= gui
TARGET = OpenAlprTry
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
LIBS += -L -lopenalpr

能不能先看看库路径下有没有openalpr库?如果不将库路径添加到 .pro 文件。

您可以将 pkg-config 用于 link 您想要的库。 添加到 .pro 文件:

unix: CONFIG += link_pkgconfig
unix: PKGCONFIG += openalpr

包名称可能不同,或者您可能需要添加更多包。

要检查 pkg-config 名称,请在您的终端中键入:

pkg-config --list-all | grep openalpr

并添加这样的包

unix: PKGCONFIG += package1 package2 package3