/lib/ld-linux.so.2:错误的ELF解释器:没有这样的文件或目录

vij*_*jay 37 glibc yum

当我执行命令安装应用程序后出现以下错误:/lib/ld-linux.so.2:错误的ELF解释器:没有这样的文件或目录

我不知道如何解决这个问题,找出我在网上搜索solotutions的解决方案,并找到以下解决方案:

yum install glibc.i686 or yum install glibc.i386
Run Code Online (Sandbox Code Playgroud)

但运气不好这根本没有用.它抛出以下错误:

Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Setting up Install Process
No package glibc.i686 available.
Error: Nothing to do
Run Code Online (Sandbox Code Playgroud)

我再次尝试解决这个问题并从网上获得一些解决方案;

Download glibc rpm packge for centos 6 and install them.
Run Code Online (Sandbox Code Playgroud)

我下载了以下包装:

glibc-2.12-1.80.el6.i686.rpm
glibc-common-2.12-1.80.el6.i686.rpm
glibc-devel-2.12-1.80.el6.i686.rpm
glibc-headers-2.12-1.80.el6.i686.rpm
glibc-static-2.12-1.80.el6.i686.rpm
glibc-utils-2.12-1.80.el6.i686.rpm
Run Code Online (Sandbox Code Playgroud)

并尝试使用以下命令安装:

yum install glibc.i686
rpm -U glibc-2.12-1.80.el6.i686.rpm
rpm -ivh glibc-2.12-1.80.el6.i686.rpm
Run Code Online (Sandbox Code Playgroud)

他们都没有工作.得到以下消息:

[root@demo tmp_glibc]# rpm -ivh glibc-2.12-1.80.el6.i686.rpm
    error: Failed dependencies:
    glibc-common = 2.12-1.80.el6 is needed by glibc-2.12-1.80.el6.i686
    libfreebl3.so is needed by glibc-2.12-1.80.el6.i686
    libfreebl3.so(NSSRAWHASH_3.12.3) is needed by glibc-2.12-1.80.el6.i686
Run Code Online (Sandbox Code Playgroud)

要解决依赖问题,试图安装"glibc-common-2.12-1.80.el6.i686.rpm",但又运气不好并给出错误:

[root@demo tmp_glibc]# rpm -ivh glibc-common-2.12-1.80.el6.i686.rpm
error: Failed dependencies:
    glibc = 2.12-1.80.el6 is needed by glibc-common-2.12-1.80.el6.i686
    libc.so.6 is needed by glibc-common-2.12-1.80.el6.i686
    libc.so.6(GLIBC_2.0) is needed by glibc-common-2.12-1.80.el6.i686
    libc.so.6(GLIBC_2.1) is needed by glibc-common-2.12-1.80.el6.i686
    libc.so.6(GLIBC_2.1.1) is needed by glibc-common-2.12-1.80.el6.i686
    libc.so.6(GLIBC_2.1.3) is needed by glibc-common-2.12-1.80.el6.i686
    libc.so.6(GLIBC_2.10) is needed by glibc-common-2.12-1.80.el6.i686
    libc.so.6(GLIBC_2.2) is needed by glibc-common-2.12-1.80.el6.i686
    libc.so.6(GLIBC_2.3) is needed by glibc-common-2.12-1.80.el6.i686
    libcap.so.2 is needed by glibc-common-2.12-1.80.el6.i686
    libdl.so.2 is needed by glibc-common-2.12-1.80.el6.i686
    libdl.so.2(GLIBC_2.0) is needed by glibc-common-2.12-1.80.el6.i686
    libdl.so.2(GLIBC_2.1) is needed by glibc-common-2.12-1.80.el6.i686
Run Code Online (Sandbox Code Playgroud)

谁能帮助我弄清楚如何解决这个问题?

更多细节:操作系统:centos 6.3百胜安装包装清单:

[root@demo tmp_glibc]# yum list installed glibc
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Installed Packages
glibc.x86_64   
Run Code Online (Sandbox Code Playgroud)

bor*_*ris 51

yum install glibc.i686
Run Code Online (Sandbox Code Playgroud)

安装这个.

  • 我不确定这些是否通常是链接的,但我还必须运行命令:`yum install libstdc ++.i686`以完全解决我丢失的依赖项. (2认同)

ZaS*_*ter 25

您没有提到您尝试运行的命令是什么产生了错误消息.但是,底线问题是您尝试在64位(x86_64)系统上运行和/或安装32位(i686)软件包,这不是一个好主意.例如,如果您尝试在64位系统上运行32位版本的Perl,结果将类似于

perl:/lib/ld-linux.so.2:错误的ELF解释器:没有这样的文件或目录

如果您仍想使用rpm命令在系统上安装32位版本的glibc和glibc-common,那么您需要知道必须同时安装这两个软件包并作为单个命令安装,因为它们是彼此的依赖.在你的情况下运行的命令将是:

rpm -Uvh glibc-2.12-1.80.el6.i686.rpm glibc-common-2.12-1.80.el6.i686.rpm


小智 7

Missing prerequisites. IBM has the solution below:

yum install gtk2.i686
yum install libXtst.i686

If you received the the missing libstdc++ message above, 
install the libstdc++ library: 
yum install compat-libstdc++

https://www-304.ibm.com/support/docview.wss?uid=swg21459143
Run Code Online (Sandbox Code Playgroud)


Vip*_*rma 6

正如@borayeris 所说,

百胜安装 glibc.i686

但如果你找不到glibc.i686libstdc++包,请尝试 -

sudo yum 搜索 glibc
sudo yum 搜索 libstd

进而,

sudo yum install {软件包}