linux – 符号查找错误:./ executableName:未定义符号:_ZN18QXmlDefaultHandlerC2Ev

前端之家收集整理的这篇文章主要介绍了linux – 符号查找错误:./ executableName:未定义符号:_ZN18QXmlDefaultHandlerC2Ev前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图在 Linux Mint 16 x64上运行一个可执行文件,它是为Ubuntu 12 x64编译的. @H_301_2@可执行文件在运行时动态使用Qt 5.1.1.我收到错误
loaded the dummy plugin 
loaded the Linux plugin 
updating server status 
./executableName: symbol lookup error: ./executableName: undefined symbol: _ZN18QXmlDefaultHandlerC2Ev

当我跑

ldd executableName | grep "not found"

搜索缺少的依赖项我没有得到结果;似乎找到了所有动态依赖项,但上面的未定义符号错误仍然存​​在.

思考?

解决方法

快速帮助:
$echo _ZN18QXmlDefaultHandlerC2Ev|c++filt
QXmlDefaultHandler::QXmlDefaultHandler()

因此,您没有QXmlDefaultHandler的构造函数.谷歌搜索我们可以在这里找到,至少Qt-4.8和Qt-5.3包含这个库.

我认为,实际运行的Qt库与编译可执行文件的库之间存在某种类型的不兼容性.我的建议是从源代码重新编译该可执行文件,但是在你的薄荷上.

从ubuntu移植源包对你来说有点困难并非不可能,在这种情况下我建议一个简单的上游源重新编译(甚至是二进制下载,如果有的话).

猜你在找的Linux相关文章