A remoção de um pacote não exclui os arquivos de cabeçalho e biblioteca

0

Anteriormente, eu tinha instalado as bibliotecas do OpenCV na minha máquina, executando sudo apt-get install libopencv-dev . Agora, quero remover completamente essas bibliotecas e tudo o que foi instalado durante esse processo.

Para fazer isso, eu corri sudo apt-get --purge remove libopencv-dev . Então, se eu executei dpkg -s opencv-dev , imprimi: dpkg-query: package 'opencv-dev' is not installed and no information is available . Então, parece que o OpenCV foi removido.

No entanto, fazendo uma pesquisa por qualquer arquivo incluindo opencv em seu nome, eu me deparo com muitos, por exemplo, arquivos de cabeçalho em /usr/local/include e arquivos de biblioteca em /usr/local/lib .

Por que esses arquivos não foram excluídos quando removi o pacote?

    
por Karnivaurus 10.07.2015 / 16:22

1 resposta

2

Uma instalação através do gerenciador de pacotes não coloca arquivos em /usr/local . Eu suponho, você colocou os arquivos naquele local. Portanto, o gerenciador de pacotes não pode removê-los.

Para ter certeza, verifique a saída de

apt-file list libopencv-dev

libopencv-dev é um pacote meta. Listar todos os arquivos que serão instalados durante a instalação de libopencv-dev :

apt-cache depends libopencv-dev | awk '{system("apt-file list "$NF)}' | less

ou apenas os pacotes

apt-cache depends libopencv-dev | awk '{print $NF}'

Para remover os pacotes, use (verifique a saída com o comando anterior primeiro)

apt-cache depends libopencv-dev | awk '{system("sudo apt-get remove "$NF)}'
    
por A.B. 10.07.2015 / 16:26