Я занимаюсь разработкой программы для OSX 10.6.4 (Snow Leopard), и я хочу иметь возможность запускать скомпилированный продукт на других компьютерах Intel 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
Iне знаю, где найти эту библиотеку.Теперь некоторые люди упоминают, что я не должен статически компилироваться на macs, поскольку общие библиотеки system должны быть доступны везде (сторонние библиотеки могут быть связаны вручную).Однако, когда я пытаюсь запустить эту программу Hello World на другом Mac, я получаю следующую ошибку:
dyld: unknown required load command 0x80000022
Trace/BPT trap
Итак, как вы компилируете программу на Mac, чтобы она могла распространяться?У меня нет проблем с архитектурой, так как большинство компьютеров, которые меня интересуют, это Intel Mac.