Instalada biblioteca usando checkinstall que criou um pacote chamado “python” e causa problemas de dependência

0

Eu queria experimentar a nova versão principal de uma biblioteca c ++ chamada gtsam. Como atualmente estou usando uma versão mais antiga da biblioteca para vários projetos e não tinha certeza sobre problemas de dependência, decidi instalá-lo usando o checkinstall:

mkdir build && cd build
make
sudo checkinstall

Desde que veio com um wrapper do python que eu também queria instalar, eu fiz:

cd python
sudo checkinstall python setup.py install

Agora eu queria remover a versão novamente, então verifiquei em qual nome de pacote a biblioteca estava instalada.

A biblioteca principal foi chamada de "build", o que eu já achei estranho, embora eu possa removê-la usando:

sudo dkpg -r build

Quando agora tentei fazer o mesmo com:

sudo dpkg -r python

ele reclamou de problemas de dependência porque está interpretando "python" como o principal pacote python do ubuntu.

Se eu dpkg -l python obtenho:

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                          Version                     Architecture                Description
 +++-=============================================-===========================-===========================-==================================================
ri  python                                        20160629-1                  amd64                       Python part of gtsam-4.0.0-alpha1.

Neste ponto, estou realmente com um pouco de medo e não sei o que fazer, para corrigir esse problema. Eu quero desinstalar os arquivos instalados por checkinstall python setup.py install sem estragar a configuração do meu sistema python setup.

Eu realmente usei o checkinstall porque não quero me preocupar com a reversão da instalação ...

    
por Malefitz 29.06.2016 / 15:49

1 resposta

1

Ok, acho que resolvi o problema.

Descobri que, com apt-cache showpkg python , posso visualizar todas as diferentes versões do Python disponíveis. Eu escolhi o mais recente e o instalei usando:

sudo apt-get install python=2.7.5-5ubuntu3

Ele me avisou que não foi possível excluir alguns "diretórios antigos":

dpkg: warning: unable to delete old directory '/usr/local/lib/python2.7/dist-packages': Directory not empty
dpkg: warning: unable to delete old directory '/usr/local/lib/python2.7': Directory not empty
dpkg: warning: unable to delete old directory '/usr/local/lib': Directory not empty
dpkg: warning: unable to delete old directory '/usr/local': Directory not empty

Mas tudo bem, já que eu realmente tentei resolver o problema sem excluir esses diretórios.

Agora, se eu fizer um dpkg -l python , recebo a seguinte saída correta:

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                          Version                     Architecture                Description
+++-=============================================-===========================-===========================-====================================================================
ii  python                                        2.7.5-5ubuntu3              amd64                       interactive high-level object-oriented language (default version)

Vou monitorar se obtenho algum comportamento mais estranho do meu sistema, mas por enquanto parece que isso resolveu o problema.

    
por Malefitz 30.06.2016 / 09:32