Como descompactar ovos Python?
-
19-09-2019 - |
Pergunta
Eu estou tentando agrupar algumas dependências de ovos ao usar py2exe e como dito no site py2exe, ele não funciona com aqueles e eu preciso descompactá-los primeiro. Eu tentei primeiro easy_install -m lxml
corrida e easy_install --always-unzip lxml==2.2.2
então, mas não funcionou. Então eu tentei definir o comportamento de descompactação de default, colocando-a distutils.cfg
. Eu não encontrar o último arquivo, então eu fiz a variável de ambiente HOME
e criou um arquivo pydistutils.cfg
lá com este conteúdo:
[easy_install]
zip_ok = 0
mas easy_install ainda não descompactar os ovos. Qual é a maneira mais fácil de fazer as coisas?
Solução
Quick corte / solução alternativa: arquivos de ovos são apenas arquivos zip, assim você pode usar o python zipfile módulo para descompactar-los. Talvez você poderia renomeie o arquivo easy_install para "easy_install_pre.exe", e criar um novo arquivo .bat com o nome "easy_install.bat":
easy_install_pre.exe %1
unzip_eggs.py %1
Outras dicas
O arquivo de pacote zippped deve ser primeira removidas antes de reinstalar . Então é é fácil.
Todos os métodos de instalação descompactada descrito na pergunta deve funcionar se o pacote compactado é removido primeiro, mas não funciona sem ele. Reinstalação do pacote compactado após a instalação descompactada é, pelo contrário possível pela atualização normal, sem necessidade de remover qualquer coisa. Isso era típico para algumas versões antigas easy_install relacionados appoximately ao período de Python 2.5.