Конечно, можно скомпилировать для macOS. Все, что вам нужно, это SDK с файлами заголовков и заглушками библиотек, которые вы можете скопировать из Xcode или получить из здесь .
Вы можете либо передать его папку компилятору с помощью -isysroot
, либо поместите / создайте символическую ссылку на /usr/share/SDKs/MacOSX.sdk
, где компилятор найдет его автоматически.
Как только вы это сделаете, вы можете запустить:
clang --target=x86_64-apple-darwin -o t t.c
Компиляция для Linux или Windows будет работать аналогично с --target=x86_64-linux-gnu
и --target=x86_64-windows-msvc
соответственно, но в дополнение к подходящему SDK также потребуется настраиваемый компоновщик. Предположительно, вы могли бы построить LLVM lld
для iOS, а затем передать -fuse-ld=ld.lld
для Linux или -fuse-ld=lld-link
для Windows, но я не смог найти это как предварительно скомпилированный двоичный файл для iOS.