1

我在我的 QT 代码中使用 libzbarQT (libzbarQT.so)。我在构建代码时遇到错误,说“未定义对 QWidget::qwsEvent(QWSEvent *event) 的引用”。我没有在我的 QT 代码中使用这个函数。我想知道哪个函数在内部调用这个函数,以便我可以稍微调整一下库。有什么建议请..

提前感谢您的帮助。

PS:我正在使用带有 LTIB 的 arm-none-linux-gnueabi-g++ 工具链交叉编译我的代码。解决错误“/usr/lib/libzbarqt.so: undefined reference to QX11Info::display()', I have build Qt with X11.Now I am getting error:libzbarqt.so: undefined reference toQWidget::qwsEvent(QWSEvent*)”错误。

4

1 回答 1

1

通常,您可以确保符号存在于库中,除非它是在没有符号的情况下构建的。我通常使用nm -aobjdump实用程序进行该操作。

更重要的是:您拥有的 zbar 动态库似乎是针对 Qt 的嵌入式版本而不是桌面 Linux 构建的。

两个版本具有相同的动态库文件名是一个不幸的问题,因此诸如此类ldd的事情没有多大帮助。

您需要确保使用与构建该库的版本完全相同的 Qt 安装版本。这意味着,如果您为此使用桌面 Linux 安装,它将无法正常工作。

于 2014-01-01T02:39:58.400 回答