应用程序崩溃,原因是“文件_ZdlPvm版本Qt_5未在具有链接时间参考的文件libQt5Core.so.5中定义”

时间:2018-10-27 13:59:13

标签: c++ qt

我有以下情况:我需要在AWS EC2 Server中运行程序。

该程序是使用Qt制作的。最近,我将程序和Amazon提供的Qt版本更新为5.9.2。

我在一台计算机上开发该程序,完成后将其复制到服务器上。

我使用第二台计算机连接到服务器(我可以在连接到我旁边的计算机或AWS服务器之间切换)。

现在的问题是,当我正在执行一项事务时,AWS服务器上的程序因以下错误而崩溃:

symbol _ZdlPvm, version Qt_5 not defined in file libQt5Core.so.5 with link time reference

如果我在自己的本地计算机上对该程序执行相同的事务,则它工作正常。

在我看来,这似乎不是由我的代码引起的错误,而是由链接和/或编译过程引起的。

谁能告诉我这是什么意思o我如何诊断问题?

1 个答案:

答案 0 :(得分:0)

我在KDE Neon的Qt 5.11.2中遇到了同样的问题。但是官方的Qt 5.11.2 SDK没问题。

如果我将此标志添加到项目QMAKE_CXXFLAGS += "-fno-sized-deallocation"中,则重新进行工作。

我相信,如果您将程序编译为 c ++ 14或更高版本,该代码将尝试进行一定规模的释放。因为使用-std=c++11编译不会导致此问题。

KDE Neon的Qt可能被编译为C ++ 11。