Кроссплатформенная разработка совместно используемой библиотеки Mac OS X - PullRequest
2 голосов
/ 25 января 2012

Должен признаться, у меня даже нет Mac, я занимался программированием для Windows и Linux.Здесь я надеюсь узнать кое-что о Mac OS X, связав это с Linux, если это возможно.И мы надеемся, что сможем скомпилировать разделяемую библиотеку Mac без покупки Mac.

Примечание: GUI абсолютно отсутствует, поэтому какао не должно требоваться, верно?Также представьте, что я сейчас использую C или C ++ 0x и POSIX.

Чем отличается общая библиотека Mac OS X от Linux?Что требуется для запуска файлов .so Linux на Mac?Нужна ли мне собственная замена Mac для ld-linux.so и linux-gate.so или некоторых других связанных с crt объектных файлов?

Есть ли кроссплатформенный gcc для Mac на Windows или Linux?(снова без графического интерфейса)

1 Ответ

2 голосов
/ 25 января 2012

Несмотря на то, что вам не нужен Cocoa / Objective-C, вам все равно нужно подключиться к библиотекам Mac OS X (например, libSystem, что похоже на libc в Linux).Формат файла совершенно другой (ELF и Mach-O), поэтому невозможно заставить библиотеку Linux или инструмент работать на Mac без перекомпиляции.

Если вы придерживаетесь API-интерфейсов POSIX / SUS, вы легко можетеписать вещи так, чтобы они компилировались как на Linux, так и на Mac без изменений, при условии, что вы не пытаетесь выполнять какие-либо специфичные для платформы вещи, такие как чтение файлов Linux /proc.

Кажется, не существует кросс-компиляторадля разработки Linux-to-Mac, и я не могу представить, чтобы кто-то пытался сделать это: вы бы преследовали движущуюся цель без какой-либо реальной выгоды.

Решение, как всегда, с этими типами вопросов: купитьиспользовал MacMini на eBay или аналогичной платформе аукциона.Они дешевые и их хватит.

...