“ImportError: Nenhum módulo chamado _struct” configurando python-minimal

10

Quando executo sudo apt-get upgrade , o erro dpkg aparece e interrompe o processo.

Detalhes do erro:

Setting up python-minimal (2.7.3-0ubuntu7.1) ...
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/local/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/usr/local/lib/python2.7/compileall.py", line 16, in <module>
    import struct
  File "/usr/local/lib/python2.7/struct.py", line 1, in <module>
    from _struct import *
ImportError: No module named _struct
dpkg: error processing python-minimal (--configure):
 subprocess installed post-installation script returned error exit status 255
dpkg: dependency problems prevent configuration of python:
 python depends on python-minimal (= 2.7.3-0ubuntu7.1); however:
  Package python-minimal is not configured yet.

E esse problema leva a uma série de problemas de dependência ao processar os seguintes pacotes:

 python
 gwibber-service
 libgwibber3
 libgwibber-gtk3
 gwibber
 gwibber-service-facebook
 gwibber-service-identica
 gwibber-service-twitter
 python-all
 python-dev
 python-all-dev
 python-apt
 python-problem-report
 python-apport
 python-libxml2
 unity-lens-gwibber
 unity-scope-video-remote

Finalmente, nada que eu possa fazer para este problema. E vários dias depois, o diretório raiz está cheio e eu nem consegui desinstalar nenhum software por causa desse problema.

    
por Java Xu 25.07.2013 / 05:23

4 respostas

7

Siga a solução de Soroosh. Broken python (2.7 ) depois de construir e instalar manualmente o python 2.6

Digite sudo -i para acesso root.

Cole o comando e aguarde cerca de 20 minutos. Funciona perfeitamente.

for pkg in $(dpkg --get-selections | egrep -v 'deinstall' | egrep python | awk '{print $1}'); do  apt-get -y --force-yes install --reinstall $pkg ; done
    
por Leo Pimentel 11.12.2014 / 19:46
1

OK, passando pelos pacotes, descobri que o python-minimal não tem o struct.py, mas o python-minimal2.7 faz.

Então, tente isso e veja se isso ajuda você:

sudo apt-get install --reinstall python2.7-minimal
sudo apt-get upgrade

Se mesmo isso não funcionar, talvez seu $ PYTHONPATH esteja bagunçado de alguma forma.

nano ~/.bashrc

Adicione a linha export PYTHONPATH="${PYTHONPATH}:/usr/lib/python2.7" then

source ~/.bashrc

E tente sua atualização novamente.

    
por Chuck R 12.08.2013 / 09:17
1

Tente isso

sudo apt purge libpython*

Eu removi python2.7 e 3.7 e excluí os arquivos relacionados do sistema. Depois disso, descobri que não posso reinstalar o python2.7 Tentei muitos métodos ainda não funcionando, incluindo:

remove soft links

del virtual env dirs

autoremove

sudo dpkg --purge 'dpkg --get-selections | grep deinstall | cut -f1'

Então eu encontrei alguns arquivos libpython pesquisando python todo o sistema (não rm arquivos do dir se você não tem certeza.) Após remover libpython* packages (eu os removi um por um), o python foi instalado com sucesso.

Espero que isso possa ajudar algumas pessoas a terem os mesmos problemas

    
por 25.01.2019 / 16:55
0

Não sei se isso vai ajudá-lo, é uma facada no escuro, mas certifique-se de que sua versão padrão do Python esteja definida como 2.7.

Existem três arquivos preocupantes em / usr / bin:

python (symlink)
python2.7
python3 (symlink)

Se você fizer ls -l /usr/bin | grep python , verá o que cada link simbólico aponta para.

Se mostrar python -> python3 ou python -> python3.3 , há algo errado. Neste ponto você vai querer:

rm /usr/bin/python
ln -s /usr/bin/python2.7 /usr/bin/python
    
por Chuck R 09.08.2013 / 12:37

Tags