c++ - 基于 libzbar 的 Qt 应用程序的构建问题

标签 c++ linux qt cross-compiling zbar

我在我的 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()”,我用 X11 构建了 Qt。现在我收到错误:libzbarqt.so: undefined reference toQWidget::qwsEvent(QWSEvent*)' 错误。

最佳答案

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

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

不幸的是,两个版本都有相同的动态库文件名,所以 ldd 之类的东西没什么用。

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

关于c++ - 基于 libzbar 的 Qt 应用程序的构建问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20855790/

相关文章:

linux - 如何在单个函数中合并 zcat 和 bzcat

python包从其他目录(seqlearn包)在linux中编译build_ext

qt - QPlainTextEdit - 更改 shift+return 行为

c++ - 如何将兼容的唯一指针插入 vector ?

c++ - imread 找不到图像

c++ - 不同素数分区的数量

python - 使用非 Qt 从 Qt QJsonDocument::toBinaryData 读取二进制 Json?

c++ - 计算 "lower contour"平面中一组线段的 `O(n log n)`

linux - 如何修复 'SYSCALL execve' : ls complains about a NULL argv[0]

multithreading - 如何在主线程中等待,直到 Qt 中的所有工作线程都完成?