我知道 Wine/Darling 和其他兼容层,但我想知道是否有可能(例如)这种方式:
1. 在 OS X 上构建一个简单的 hello_world.c 程序。
2. 使用 objcopy/objconv/其他一些工具,将机器代码复制到 Linux 可执行文件中,并将对 OSX libc 的调用替换为对 glibc 的调用。如果它是另一个动态链接到其他 OSX 库的可执行文件,请复制这些库。
3. 在 Linux 上运行程序,假设它可以工作。
示例hello_world.c
:
#include <stdio.h>
int main(void) {
printf("Hello World");
return 0;
}