c++ - 应用程序崩溃并显示 "symbol _ZdlPvm, version Qt_5 not defined in file libQt5Core.so.5 with link time reference"

标签 c++ qt

我遇到以下情况:我需要让程序在 AWS EC2 服务器上运行。

程序是用Qt制作的。最近,我将亚马逊提供的程序和Qt版本更新到5.9.2。

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

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

现在的问题是,当我进行其中一项交易时,AWS 服务器上的程序因以下错误而崩溃:

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

如果我在我自己的本地计算机上对程序执行相同的事务,它工作得很好。

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

谁能告诉我这意味着什么或如何诊断问题?

最佳答案

我在使用 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。

关于c++ - 应用程序崩溃并显示 "symbol _ZdlPvm, version Qt_5 not defined in file libQt5Core.so.5 with link time reference",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53022608/

相关文章:

c++ - 如何避免在库中为许多类型/函数重复键入模板特化

C++,fstream,从文件中读取没有给出正确的结果

qt - QsslSocket : Cannot access peer (client) certificate on other peer (server)

c++ - Qt 文件夹浏览器多次打开

windows - 如何让 Windows 认为您的应用程序仍然很忙,尽管它没有响应

c++ - 我可以用什么来替换我的 Qt 应用程序中的 sleep 和 usleep?

C++ 命名管道客户端不会读取超过 4096 字节

c++ - 如何将所有内核用于 nmake?

c++ - Qt::WindowStaysOnBottomHint 和 frameless 标志使得我的 Qt 窗口不会位于所有窗口的底部

python - PyQt - QTableView 通过隐藏行搜索