Сведения о вопросе

Oleksandr

13:05, 5th August, 2020

Теги

xcode   qt   qmake    

Получение QMake для создания правильного .апп

Просмотров: 429   Ответов: 3

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

  • 4 приложения
  • 50+ библиотеки
  • 20 + сторонних библиотек

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

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

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

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

Спасибо



  Сведения об ответе

qwerty101

13:47, 9th August, 2020

Я уверен, что это может быть очень полезным для вас :

deployqt

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


  Сведения об ответе

lool

15:21, 1st August, 2020

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

Я загрузил его сюда: 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   
}

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

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


  Сведения об ответе

davran

11:21, 25th August, 2020

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


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться