Linux - 运行可执行文件错误(未找到 GLIBCXX_3.4.21)

标签 linux qt

我正在尝试将我的应用程序部署为可以在任何 Linux 机器上运行的独立应用程序。我已经在 Qt Creator 下构建了我的应用程序,并成功地静态链接了我的应用程序。但是,当我在另一台 Linux 机器上测试该应用程序时,出现以下错误:

libstdc++.so.6: version 'GLIBCXX_3.4.21' not found (required by ./Executable)

我不确定如何解决这个错误。

最佳答案

这是我自己犯的错误,但在另一个上下文中。 这意味着:libstdc++.so.6(一个共享目标文件,c++程序的标准库,许多程序可以一起使用(共享))是另一个版本,然后你编译的程序需要。

我在从 gcc-4.8 切换到 gcc-5 时遇到了这个问题。

您在编译和执行时是否使用过不同的 linux 发行版? (Ubuntu?)

您必须确保版本匹配,或者将使用的 libstdc++ 静态编译到您的二进制文件中。

这是与此类问题相关的 SO 问题。 GLIBCXX versions

关于Linux - 运行可执行文件错误(未找到 GLIBCXX_3.4.21),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38446439/

相关文章:

qt - QGraphicsItem选择

linux - 使用 Linux shell 脚本从文件中删除 ^H 和 ^M 字符

linux - Linux 中是否可以通过/sys 获取特定核心的当前 CPU 利用率?

windows - 在没有传统操作系统的情况下运行 Ruby?

c++ - 如何从已知像素值构建 QImage

c++ - 如何找出 QQuickItem 派生类对象何时初始化?

linux - 在远程 Linux 服务器上备份 Lacie 2 Big NAS

linux - Linux 上的 SO_REUSEPORT

python - 如何防止 QTableView 项在双击时被清除

c++ - 如何从 C++ 代码中获取项目名称?