Desinstala a biblioteca instalada via make install

0

Eu instalei uma biblioteca, compilada da fonte, via make install into /usr/local/ Agora descobri que era uma má idéia (arquivos conflitantes etc.) e gostaria de reverter essa ação. O pacote não fornece make uninstall . Isso é possível, sem reinstalar todo o sistema operacional? Atualmente rodando o OS Tumbleweed.

    
por arc_lupus 09.07.2017 / 23:03

2 respostas

2

Sim, há algumas maneiras (que podem ser mais complicadas se o seu sistema operacional usar /usr/local para seus próprios fins (por exemplo, os * BSDs usam /usr/local como destino para seus pacotes ou porta) e sua instalação realmente arquivos corrompidos fornecidos pelo fornecedor em vez de substituir os arquivos do fornecedor em /usr ...)

  • Pesquise em /usr/local para arquivos com mais ou menos a mesma hora de modificação que um arquivo conhecido instalado pela biblioteca.
  • execute novamente o make install em algo que registre quais arquivos estão sendo violados, por exemplo, %código%

Os arquivos encontrados podem ser movidos para o lado (provavelmente os que estão abaixo dos diretórios strace -o installlog -e trace=file -ff make install lib e bin ); Se o seu include tiver alterado ou substituído qualquer arquivo fornecido pelo fornecedor, talvez seja necessário reinstalar pacotes específicos para restaurar esses originais.

(Aprender a usar um depósito de software fora do espaço gerenciado pelo fornecedor, por exemplo, sob o seu diretório pessoal pode ser benéfico se você estiver instalando muitas versões personalizadas do software.)

    
por 09.07.2017 / 23:18
0

Seu software usa autotools ? Em caso afirmativo, você pode configurar sua instalação para ir a um local diferente de um local de destino padrão, por exemplo,

./configure --prefix=/somewhere/else/than/usr/local

Para obter melhores resultados, use um diretório que foi criado para o propósito que está inicialmente vazio. Isso mostraria todos os arquivos que você instalou e você poderia percorrer a lista e remover os arquivos correspondentes de dentro de /usr/local . Se houver muitos desses arquivos, esse processo poderá ser automatizado por script.

Se não, você ainda pode fazer algo similar com o software Makefile, desde que o destino não seja codificado.

autotools normalmente disponibiliza make uninstall , portanto, parece que seu software não usa autotools .

Em geral, as instalações locais podem ser problemáticas, em parte pelas razões que você descobriu - instalações locais podem ser difíceis de controlar e podem sobrescrever arquivos existentes. Sempre procure por um pacote binário para o seu sistema operacional ou distribuição. Fazer uma instalação local deve ser considerado um último recurso. E para software simples, gerar um pacote binário não é difícil; e existem ferramentas que podem ajudar você a fazer isso.

    
por 09.07.2017 / 23:28