como compactar o pacote python que inclui scripts python e scripts bash para OSx como pythonTool.app?


0

Eu criei uma ferramenta python que quero compartilhar com os usuários. Eu tentei o Automator e funciona, mas usei Application> Run Shell Script no qual codifiquei o caminho do meu script python, mas como eu quero que qualquer usuário possa usá-lo em qualquer local, acho que não. Eu isso parece possível solução. Em segundo lugar, meu script python também usa a pasta atual como argumento, veja abaixo:

usando o Automator

Na figura acima, o caminho para o aplicativo é o local em que estou desenvolvendo, o que está errado. De fato, acho que esse caminho deve ser gerado dinamicamente e o caminho da pasta atual do segundo argumento também deve ser passado.

Eu também tentei com ornitorrinco , que copia o conteúdo para a pasta Aplicativo e todos os arquivos necessários empacotados dentro do Gallery.app (veja abaixo)

 Contents 
      \_ Info.plist
      \_ MacOS
        \_ Gallery # i ran this guess clicking on Gallery.app executes this binary
      \_ Resources
                \_ AppSettings.plist
                \_ MainMenu.nib
                \_ README.md
                \_ __init__.py
                \_ appIcon.icns
                \_ controlBar.py
                \_ exifread
                \_ gallery.py
                \_ icons.py
                \_ script
                \_ scripts
                \_ slideShow.py
                \_ slideShowBase.py
                \_ utils.py       
                \_ PyQt4
                      \_ Qt.so
                      \_ QtCore.so
                      \_ QtGui.so
                      \_ __init__.py
                      \_ _qt.so
                      \_ libQt.a
                      \_ libQtCore.a
                      \_ libQtGui.a

mas como minha ferramenta requer PyQt4, eu incluí os arquivos necessários também, mas novamente isso mostra o erro abaixo:

Traceback (most recent call last):
  File "/Applications/Gallery.app/Contents/Resources/script", line 12, in <module>
    import utils
  File "/Applications/Gallery.app/Contents/Resources/utils.py", line 4, in <module>
    from PyQt4 import QtGui, QtCore
ImportError: dlopen(/Applications/Gallery.app/Contents/Resources/PyQt4/_qt.so, 2): Symbol not found: _PyCapsule_Type
  Referenced from: /Applications/Gallery.app/Contents/Resources/PyQt4/_qt.so
  Expected in: flat namespace
 in /Applications/Gallery.app/Contents/Resources/PyQt4/_qt.so

No início eu estava recebendo o módulo exifread não encontrado, então eu o copiei também e me livrei do erro, mas fazer o mesmo para o PyQt4 não funcionou :(


O que acontece se você copiar os diretórios e scripts manualmente. Além disso, observe minha nota na minha resposta em seu último post sobre fazer uma coisa semelhante para minha ação
markhunte

A ferramenta normal para fazer isso é o Py2App, para o qual o código inclui um exemplo do PyQt
Marcos

@ Marcos: seria essa, eu vou dar-lhe uma tentativa ...
Piekarz ciasto
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.