Получение QMake для генерации правильного .app - PullRequest
3 голосов
/ 26 августа 2008

У меня есть большой выходной проект C ++, включающий:

  • 4 заявки
  • 50 + библиотеки
  • 20 + сторонние библиотеки

В проекте используется QMake (часть Qt от Trolltech) для сборки рабочей версии на Linux, но я пытался создать ее на MacOS.

Я могу встраивать в MacOS, используя QMake, но у меня проблемы с созданием финального .app. Необходимо собрать все сторонние фреймворки и динамические библиотеки, все динамические библиотеки проекта и убедиться, что приложение их находит.

Я читал в Интернете об использовании install_name_tool, но мне было интересно, есть ли процесс для его автоматизации.

(Возможно, ответ заключается в использовании XCode, см. Связанный вопрос, но у него могут возникнуть проблемы со сборкой uic и moc)

Спасибо

Ответы [ 3 ]

3 голосов
/ 26 августа 2008

Я уверен, что это может оказать вам большую помощь:

deployqt

Надеюсь, это поможет!

2 голосов
/ 17 сентября 2008

У нас та же проблема на Last.fm, я смотрел на DeployQt, и он не очень полезен, если у вас есть сторонние библиотеки. В конце я написал Perl-скрипт, который генерирует Makefile, который вы можете использовать для генерации .app и / или .dmg.

Я загрузил это здесь: http://www.methylblue.com/detritus/QMake.dmg/

Чтобы использовать его, добавьте это в pro-файл вашего приложения:

 macx*:!macx-xcode:release {
     system( QT=\'$$QT\' QMAKE_LIBDIR_QT=\'$$QMAKE_LIBDIR_QT\' $$ROOT_DIR/common/dist/mac/Makefile.dmg.pl $$DESTDIR $$VERSION $$LIBS > Makefile.dmg )
     QMAKE_EXTRA_INCLUDES += Makefile.dmg   
}

Я уверен, что это еще не все портативно, но было бы хорошо, чтобы кто-то еще использовал и посмотрел, так ли это.

По сути, это первый официальный выпуск этого кода, поэтому, пожалуйста, присылайте мне сообщения об ошибках, а также улучшения. Спасибо.

0 голосов
/ 04 сентября 2008

Я полностью обошел эту проблему, статически построив приложение Qt на OS X. Хотя это может быть непрактично для вас.

...