这个文件在 macOS 中无法执行吗?

Is this file unable to be executed in macOS?

背景

我有一个名为 mason_simulator 的 Unix 可执行文件。我通过

在 macOS 终端中检查了它的属性
file mason_simulator

结果如下:

mason_simulator: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=f020e84c15ef18a541d6bce9376f58fe3e547448, not stripped

问题 这是否意味着该文件无法在 macOS 中执行?因为当我双击它时,出现错误信息:'cannot execute binary file'。

一般来说,为一个 OS 设计的二进制文件不能在另一个上执行。您的二进制文件是为 Linux 设计的,因此它不会 运行 在 macOS 上。有些模拟器在某些情况下允许这样做,尽管 macOS 不附带一个。

此外,与大多数 Linux 二进制文件一样,您的二进制文件是 ELF 可执行文件,而 macOS 使用 Mach-O 可执行文件。 macOS 内核甚至无法解析二进制格式来执行它。

如果你想在 Mac 上 运行 这个二进制文件,你可以尝试使用 Docker 或 Linux VM 来 运行 这个二进制文件。