linux elf64,linux – CentOS 64位坏ELF解释器

您使用的是64位系统,并且没有安装32位库支持。

安装(基线)对32位可执行文件的支持

Fedora / Red Hat系列中的大多数桌面Linux系统:

pkcon install glibc.i686

可能是一些桌面Debian / Ubuntu系统?:

pkcon install ia32-libs

Fedora或更高版本的Red Hat,CentOS:

sudo dnf install glibc.i686

旧RHEL,CentOS:

sudo yum install glibc.i686

甚至更老的RHEL,CentOS:

sudo yum install glibc.i386

Debian或Ubuntu:

sudo apt-get install ia32-libs

应该抓住你需要的(第一,主)库。

警告

偶然,这意味着您的RPM(或DPkg / DSelect)数据库已损坏,或者您尝试运行的应用程序未通过软件包管理器安装。如果你刚接触Linux,你可能希望尽可能避免使用软件包管理器以外的软件…

如果您在设置中不使用“sudo”

类型

su -c

每次你看到sudo,例如,

su -c dnf install glibc.i686

一旦你有了,你可能需要支持libs

任何需要安装glibc.i686或glibc.i386的人都可能会运行到其他库依赖项。要识别提供任意库的包,您可以使用

ldd /usr/bin/YOURAPPHERE

如果你不确定它是在/ usr / bin,你也可以回来

ldd $(which YOURAPPNAME)

查看输出的缺失库,并为每一个,取它的名字(例如对于libSM.so.6 =>缺少,你会使用libSM.so.6),并运行:

Fedora / Red Hat Enterprise / CentOS:

dnf provides /usr/lib/libSM.so.6

或者,在较旧的RHEL / CentOS上:

yum provides /usr/lib/libSM.so.6

或者,在Debian / Ubuntu:

首先,安装并下载apt-file的数据库

sudo apt-get install apt-file && apt-file update

然后用搜索

apt-file find libSM.so.6

注意前缀路径/ usr / lib在(通常)情况下;很少,一些库仍然生活在/ lib由于历史原因…在典型的64位系统,32位库存在/ usr / lib和64位库存在于/ usr / lib64。

(Debian / Ubuntu不同地组织多体系结构库。)

这应该给你一个包名称,例如:

libSM-1.2.0-2.fc15.i686 : X.Org X11 SM runtime library

Repo : fedora

Matched from:

Filename : /usr/lib/libSM.so.6

然后可以pkcon安装libSM.i686(或完全指定版本:sudo dnf install ibSM-1.2.0-2.fc15.i686)以获取必需的库。 (在GUI中使用pkcon,或sudo dnf / yum / apt-get适当…)

一些图书馆在他们的名字之前将有一个“时期”指示符;这可以省略,它是底层RPM库处理版本号的方式的一个假象;例如

2:libpng-1.2.46-1.fc16.i686 : A library of functions for manipulating PNG image format files

Repo : fedora

Matched from:

Filename : /usr/lib/libpng.so.3

这里,2:可以省略;只是pkcon安装libpng.i686或sudo dnf安装libpng-1.2.46-1.fc16.i686。 (它含糊的含义是:在某些时候,libpng包的版本号向后滚动,“epoch”必须递增,以确保更新版本在更新过程中被认为是“更新的”。两次。)

更新以更充分地澄清和涵盖各种包管理器选项(2016年3月)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个错误提示说明在CentOS 7上执行脚本时发生了问题。错误指出了问题的源头是eclipse执行文件中的动态链接器(ld-linux.so.2),该动态链接器无法正确识别该文件。这种情况通常是由于文件损、格式不正确或与系统不兼容等原因导致的。 要解决这个问题,你可以尝试以下几个步骤: 1. 首先确认你下载的eclipse执行文件是否完整无损。可以重新下载eclipse,并确保文件完整,无错误。 2. 检查你的CentOS 7系统是否正确安装了所需的依赖库。使用以下命令检查缺失的库文件: ``` ldd eclipse ``` 如果缺少某些库文件,则尝试安装这些库文件,例如: ``` yum install libstdc++.so.6 ``` 这个命令将安装缺失的libstdc++库文件。 3. 确认你的eclipse执行文件是否为CentOS 7系统所支持的架构(32位或64位)。你可以使用以下命令检查系统架构: ``` uname -a ``` 然后确保下载的eclipse执行文件与系统架构相匹配。 4. 如果以上步骤都无法解决问题,可以尝试升级你的系统或者使用其他版本的eclipse。 总之,错误"./wct.sh: ./eclipse: /lib/ld-linux.so.2: bad elf interpreter"表明执行的eclipse文件无法识别其中的动态链接器。通过检查文件完整性、安装缺失的库文件、确认系统架构以及升级系统等方法,你可以尝试解决这个问题。 ### 回答2: 这个错误提示出现是因为在运行脚本时,CentOS 7系统找不到正确的ELF解释器ELF(Executable and Linkable Format)是一种可执行文件的格式,而解释器则用于执行可执行文件。 通常情况下,CentOS 7系统使用的是位于/lib64/ld-linux-x86-64.so.2的64位解释器,然而在你的情况下,系统在指定的路径下找不到该解释器,导致出现错误。 解决这个问题的方法有两种: 1. 安装32位的解释器:这种方法适用于你要运行的可执行文件是32位的。可以通过运行以下命令来安装32位解释器:sudo yum install glibc.i686。这样就会安装一个32位版本的glibc(GNU C标准库),其中包含了所需的解释器。 2. 更换正确的解释器路径:这种方法适用于你有可执行文件的正确版本(64位或32位),但在错误的解释器路径下。可以通过编辑脚本文件,将解释器路径更改为正确的路径。你可以使用命令which ld-linux来找到正确的解释器路径,然后将其替换脚本中的错误路径。 无论你选择哪种方法,请记得在安装或更改任何系统文件之前备份重要数据。此外,确保你的系统是最新的,并且已经安装了所有必要的软件包和依赖关系。 希望以上解答对你有所帮助! ### 回答3: 这个错误信息指的是在运行CentOS7操作系统中的一个叫做"wct.sh"的脚本时出现了问题。具体错误是脚本中的"eclipse"这个可执行文件无法正常运行,因为它依赖的"/lib/ld-linux.so.2"这个动态链接库(Dynamic Link Library,简称DLL)存在问题。 这个错误通常发生在以下三种情况下: 1. "eclipse"可执行文件本身损或无效; 2. 对应的动态链接库"/lib/ld-linux.so.2"损或无效; 3. 系统环境中缺少该版本的动态链接库。 解决这个问题可以尝试以下几个步骤: 1. 检查并确保"./wct.sh"脚本文件和"eclipse"可执行文件的完整性和有效性。可以尝试重新下载或替换它们。 2. 如果"/lib/ld-linux.so.2"动态链接库损或无效,可以尝试重新安装或更新它。使用以下命令进行检查和安装更新: ``` yum provides ld-linux.so.2 yum install glibc ``` 这将更新glibc(GNU C Library)包,其中包含了这个动态链接库。 3. 如果系统中缺少该版本的动态链接库,可以尝试从其他可靠的来源安装或更新该包。可以搜索"glibc"或"/lib/ld-linux.so.2"来获取相关信息和指导。 如果以上步骤仍无法解决问题,可能需要检查系统的相关配置和其他依赖项。根据具体情况,可能需要寻求专业人士的帮助来解决该问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值