Можно ли создать .o файлы с помощью компилятора, а затем связать их с помощью другого компилятора? - PullRequest
2 голосов
/ 29 декабря 2011

Чтобы быть более конкретным, мне интересно, можно ли скомпилировать .c и .pl с помощью компилятора пролога gnu, но связать их с компилятором Apple LLVM вместе с остальным проектом iOS для возможности использования пролога в приложении iOS.

1 Ответ

3 голосов
/ 29 декабря 2011

Когда вы связываете файлы, вы делаете это с помощью компоновщика, а не компилятора. Иногда компиляторы вызывают для вас компоновщик, поэтому вам не нужно этого делать, поэтому вы думаете, что компиляторы выполняют компоновку.

Вот как вы связываете несколько объектных файлов:

ld -o myprogram program.o program1.o ...

Для получения дополнительной информации о ld смотрите здесь .

РЕДАКТИРОВАТЬ: Если вы собираетесь использовать свои пролог-файлы .o в проекте iOS, вы должны быть уверены, что скомпилировали пролог-код для той же платформы, на которой работает iOS, скажем ARM.

...