2010-12-03 2 views
2

Я разрабатываю приложение Qt, и мне нужно поддерживать Linux, Windows и Mac OS X. Единственная проблема, однако, в том, что у меня нет Mac. Можно ли скомпилировать мое приложение для Mac OS X в Linux и упаковать его в файл .dmg?Компиляция приложения Qt для Mac OS X на Linux

Я также обеспокоен тем, что мое приложение зависит от OpenSSL, могу ли я скомпилировать OpenSSL для Mac OS X на моей Linux-машине?

спасибо.

+0

Возможный дубликат [Как скомпилировать для OS X в Linux или Windows?] (Http://stackoverflow.com/questions/693952/how-to-compile-for-os-x-in-linux-or- windows) – ephemient 2010-12-03 06:15:48

+0

Знаете ли вы владельцев Mac, которые позволят вам «заимствовать» свою машину в Интернете? Вы можете ssh на свой Mac, чтобы делать удаленные компиляции (через qmake + make), а затем использовать VNC для удаленного тестирования GUI время от времени. Я бы подумал, что было бы намного проще, чем пытаться перекрестно скомпилировать исполняемые файлы Mac из Linux ... и даже если вы можете перекрестно скомпилировать, вам все равно нужен доступ к Mac для проверки полученного исполняемого файла, Ты много спасешь. – 2010-12-03 07:29:21

ответ

3

Как вы хотите поддерживать Mac, если вы даже не можете проверить, работает ли ваше программное обеспечение?

Перекрестная компиляция для OS X: Я сомневаюсь, что есть какое-то решение (я бы хотел узнать об этом, если это так), для этого вам понадобится весь SDK и toolchain. Для создания файла .dmg части, есть другой вопрос здесь:

How to build a dmg Mac OS X file (on a non-Mac platform)?

Там не должно быть никакой необходимости связывать OpenSSL, так как это часть каждой установки OS X.

Если вы хотите поддерживать Mac, вам необходимо установить Mac, доступ к одному (удаленному, арендованному и т. Д.) Или тому, кто сделает это за вас. Я не думаю, что у тебя есть другой выбор.

Как принято отвечать в

How to Compile for OS X in Linux or Windows?

предлагает, вы можете пойти на Macports в случае, если вы разрабатываете свободное программное обеспечение. Он выполняет компиляцию на компьютере пользователя (подумайте о портах FreeBSD или о появлении Gentoo). Тем не менее, это потребует тестирования.

Смежные вопросы