linux - 执行二进制文件

标签 linux macos unix gcc x86

我下载了一个使用 GCC 4.4.4 为 x86-64 Red Hat Linux 编译的二进制文件(一个 C 程序)。

当我尝试在运行 GCC 4.2.1 的 Mac OS X(运行 Lion 以及 x86-64)上运行它时,它会说:cannot execute binary file 是否正常?它无法将其检测为二进制文件。

为什么要这样做?我相信 gcc 版本与此无关,因为该文件已经编译。它是为两台机器都运行的 x86-64 编译的。有人可以解释一下吗?

最佳答案

有不同的二进制格式。 Linux系统使用ELF用于可执行文件和库,但 Mac OS X 使用 Mach-O format . Windows 仍然使用另一个:PE format .

关于linux - 执行二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9222407/

相关文章:

unix - 如何在 Centos 5.8 上安装 YUM

linux - 尝试在 ubuntu ec2 实例上安装某些东西

html - Mac 和 Windows 浏览器中的不同 CSS

macos - swift 2.0 : Cannot invoke 'setValue' with an argument list of

java - Spark 错误 - 不支持的类文件主要版本

shell - tee 到压缩文件

unix - bsd 内核用户空间事件 kqueue

linux - pthread_join(thread_id, &res) ,如果 &res 不为 NULL - 是否需要 free(res) ?

javascript - 使用javascript在firefox浏览器中评估系统命令或python脚本

linux - 使用 sed 替换前后有非字母数字字符的字符串