cpu-architecture - 目标文件体系结构是否独立?

标签 cpu-architecture object-files

假设我从 hello.c 创建了一个目标文件在 x86 计算机,然后将该文件发送到 计算机。它能够从接收到的目标文件中构建一个可执行文件吗?假设我们正在使用 gcc .

注:

我知道交叉编译是一种众所周知的方法,可以实现基本相同的最终结果,但对这种特定情况感到好奇。

我也知道这个 question ,但我想主要强调不同的 CPU 体系结构和相同的编译器,因为我没有发现这些点是我适度的理解。

最佳答案

目标文件包含的内容没有标准。有些可能已经包含机器指令,有些可能是独立于平台的。因此,如果有的话,它取决于您的特定编译器,因此成为特定于应用程序的问题。

例如,ELF -header 包含有关编译二进制文件的 CPU 和 ABI 的信息,不幸的是,这已经结束了讨论。

关于cpu-architecture - 目标文件体系结构是否独立?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25012014/

相关文章:

c - 如何检查函数是否正在回调自身

c - 为什么我的 data 和 bss 段内存使用量为零?

c - GCC 链接.o 文件

compiler-construction - 什么是对象文件上下文中的 LLVM 虚拟部分?

c++ - 为指令集模拟器设计高效内存

c++ - 如何达到每个周期 4 FLOP 的理论最大值?

multithreading - 当不同的CPU内核在不同步的情况下写入同一RAM地址时会发生什么情况?

mips - 在MIPS流水线中,如果下一条指令覆盖前一个寄存器的寄存器,流水线中是否会出现停顿?

compiler-errors - NASM 'org'指令和 '-fobj'

c++ - 在理解 C++ 程序的编译方面需要帮助