我正在 OSX 10.6.4 (Snow Leopard) 上开发一个程序,我希望能够在其他英特尔 Mac 上运行编译后的产品,其中一些可能没有安装 XCode。
为了简单起见,我首先编写了一个 Hello World 程序。
#include<stdio.h>
int main() {
printf("Hello world!\n");
return 0;
}
如果我将其编译为
gcc -static prog.c
我收到以下错误:
ld: library not found for -lcrt0.o
我不知道在哪里可以找到这个图书馆。现在,有人提到我不应该在 mac 上静态编译,因为系统共享库应该随处可用(第三方库可以手动链接)。但是,当我尝试在另一台 Mac 上运行这个 Hello World 程序时,我收到以下错误:
dyld: unknown required load command 0x80000022
Trace/BPT trap
那么,如何在 mac 上编译一个程序以便可以分发呢?我没有架构问题,因为我感兴趣的大多数计算机都是英特尔 Mac。