linux无法执行二进制文件

linux无法执行二进制文件

最近我在 Linux 上做一个 C++ 项目。我在 Linux 上有一个可执行文件。我尝试运行它,但出现错误:无法执行二进制文件。我在 SO 上看到过类似的问题,他们说这种情况发生在人们尝试在 ARM CPU 上运行 x86 程序时。但问题是我使用的是英特尔 i5 3230m CPU,这应该是 x86 架构。很奇怪。

还有一个问题我觉得可能和这个有关。当我在 WMware Player 中安装 Linux 系统时。最初我尝试安装 Centosx86_64,但失败了(我的笔记本电脑应该是 64 位系统)。我不得不切换到 Centosi386 才能完成。所以这也与 WMware Player 的版本有关吗?

有人能帮我一下吗?谢谢!

更新:好的,我尝试使用文件,结果发现这是一个 64 位文件。(ELF 64 位 LSB 可执行文件,x86-64,版本 1(GNU/Linux),动态链接(使用共享库),适用于 GNU/Linux 2.6.24,未剥离)现在我尝试了 lscpu()。令人惊讶的是,它显示架构:i686 cpu op-mode:32bit。怎么会这样?我的处理器是 32 位架构?!

相关内容