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:
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 :(
fonte