【问题标题】:libstdc++.so.5: cannot open shared object file - but library is installed and up-to-datelibstdc++.so.5:无法打开共享对象文件 - 但库已安装且是最新的
【发布时间】:2010-09-16 22:37:25
【问题描述】:

我的客户让一些开发人员编写了一个小型 C++ 命令行应用程序以在他们的 Linux 服务器上运行。在其中一台服务器(运行 Fedora 11)上,当我执行应用程序时,我收到以下错误:

error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory

显然我做的第一件事是

yum install libstdc++

但我明白了

Package libstdc++-4.4.1-2.fc11.x86_64 already installed and latest version

所以库已经存在并且是最新的。通常对我来说,这些错误表明缺少库。那么接下来我应该看哪里呢?

【问题讨论】:

    标签: linux fedora libstdc++


    【解决方案1】:

    rpm 因此 repo 知道共享库名称以及提供它们的内容。所以

    yum install 'libstdc++.so.5'

    如果 repo 有它,将安装任何必要的东西。

    在您的情况下,如果您还没有它们,它将获取 compat-libstdc++-33-3.2.3-66.i586.rpm 及其 32 位 deps,因为您尝试运行的二进制文件显然是 32-位

    【讨论】:

      【解决方案2】:

      libstdc++-4.4.1-2.fc11.x86_64 安装 libstdc++.so.6。你需要compat-libstdc++-33-3.2.3-66.x86_64 包来获取libstdc++.so.5。 (不要符号链接!libstdc++.so.5libstdc++.so.6 不兼容。)

      【讨论】:

        【解决方案3】:

        yum install compat-libstdc++-33 为我解决了这个问题。

        【讨论】:

          【解决方案4】:

          libstdc++.so.5 是标准 c++ 库的一个非常旧的版本。

          执行 yum search libstdc++ ,您必须安装其中一个 compat-libstdc++ 软件包。

          【讨论】:

            【解决方案5】:

            正如 caf 和 aaron 所说,当我遇到类似错误时,运行 yum install compat-libstdc++-33 libstdc++.so.5 -y 对我有用。

            我遇到的唯一问题是,我没有签出正确的 repo,所以我不得不运行 yum-config-manager --enable rhel-7-server-optional-rpms 来访问这些文件。如果您使用的不是 RedHat 7,则需要搜索正确的 repo。

            您始终可以通过先运行 yum provides libstdc++.so.5 来检查您是否拥有正确的 repo。

            【讨论】:

              【解决方案6】:

              在 RedHat 7 上也为我工作:错误是:

              加载共享库时出错:libstdc++.so.5:错误的 ELF 类:ELFCLASS32

              解决方案是:
              yum install compat-libstdc++-33 libstdc++.so.5 -y

              【讨论】:

                【解决方案7】:

                您是否检查过该软件包确实安装了 libstdc++.so.5 而不是其他版本?这是您最有可能遇到的问题。

                【讨论】:

                • 这没有回答问题。这应该是一条评论。
                猜你喜欢
                • 1970-01-01
                • 2014-08-01
                • 1970-01-01
                • 2022-01-11
                • 1970-01-01
                • 2019-09-11
                • 2019-04-23
                • 2012-07-13
                • 2014-04-30
                相关资源
                最近更新 更多