Pergunta

Eu tenho um grande projeto C++ existente envolvendo:

  • 4 aplicações
  • Mais de 50 bibliotecas
  • Mais de 20 bibliotecas de terceiros

O projeto usa QMake (parte do Qt da Trolltech) para construir a versão de produção no Linux, mas tenho tentado construí-la no MacOS.

Posso construir no MacOS usando QMake perfeitamente, mas estou tendo problemas para produzir o .app final.É necessário coletar todas as estruturas e bibliotecas dinâmicas de terceiros, todas as bibliotecas dinâmicas do projeto e garantir que o aplicativo as encontre.

Eu li on-line sobre o uso de install_name_tool, mas queria saber se existe um processo para automatizá-lo.

(Talvez a resposta seja usar o XCode, veja a pergunta relacionada, mas haveria problemas com a construção de uic e moc)

Obrigado

Foi útil?

Solução

Tenho certeza que isso pode ser de grande ajuda para você:

implantar qt

Espero que isto ajude !

Outras dicas

Temos o mesmo problema no Last.fm, olhei no DeployQt e não adianta muito se você tiver bibliotecas de terceiros.No final escrevi um script perl que gera um Makefile, que você pode usar para gerar um .app e/ou .dmg.

Eu carreguei aqui: http://www.metilblue.com/detritus/QMake.dmg/

Para usá-lo, adicione isto ao arquivo profissional do seu aplicativo:

 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   
}

Tenho certeza de que ainda não é portátil, mas seria bom que outra pessoa usasse e verificasse se é assim.

Este é basicamente o primeiro lançamento oficial deste código, então envie-me relatórios de bugs e também melhorias.Obrigado.

Evitei esse problema completamente construindo meu aplicativo Qt estaticamente no OS X.Isso pode não ser prático para você.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top