AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1545442
Accepted
Zebrafish
Zebrafish
Asked: 2025-04-10 02:16:05 +0800 CST2025-04-10 02:16:05 +0800 CST 2025-04-10 02:16:05 +0800 CST

Ajude-me a desinstalar o CMake [duplicado]

  • 772
Esta pergunta já tem respostas aqui :
Como instalo a versão mais recente do cmake a partir da linha de comando? (13 respostas)
Fechado ontem .

Instalar coisas no Linux é realmente complicado para mim porque há muitas maneiras de fazer isso, e se eu quiser remover algo, não sei como fazer. Tenho o CMake na minha pasta /usr/local/bin. Mas está faltando o cmake-gui, então quero instalá-lo, mas quero remover o existente. Quando eu executo apt list --installed, não há CMake, então não posso removê-lo com isso. E tenho quase certeza de que não coloquei o cmake dentro da pasta bin. O CMake tem alguns outros arquivos, como em usr/share, então se eu quisesse remover o CMake manualmente, teria que remover essa pasta, mas não sei se há outras. O processo deve ser simples como no Windows: você instala algo, há um registro disso e você pode desinstalá-lo. Eu sei que é basicamente isso que o apt é, e eu gosto do apt, mas o problema é que TODOS os pacotes nos quais eu estava interessado estavam REALMENTE desatualizados usando o apt.

De qualquer forma, digamos que eu remova /usr/local/bin/cmake e usr/share e, em seguida, baixe o CMake novamente. Ele só vem como um arquivo zip ou tar, o que significa que você só pode colocar os arquivos manualmente em algum lugar. Devo colocar os arquivos em /user/local/bin e user/share novamente? Então, no futuro, se eu quiser atualizá-lo, terei que refazer manualmente essas pastas? Não há maneira melhor?

software-installation
  • 1 1 respostas
  • 102 Views

1 respostas

  • Voted
  1. Best Answer
    eyoung100
    2025-04-10T03:15:48+08:002025-04-10T03:15:48+08:00

    Métodos de liberação genéricos

    Existem três tipos de Linux como categorias gerais:

    1. Distribuições binárias - Os pacotes são escolhidos pelos mantenedores, congelados no momento do lançamento e enviados ao repositório para aquele lançamento.
    2. Distribuições contínuas - A maioria, senão todas, são baseadas em código-fonte, destinadas a serem instaladas uma vez, com todos os pacotes atualizados para sempre
    3. Distribuições atômicas - Quando atualizações são aplicadas, se uma atualização falhar, todas as atualizações falharão.

    A escolha do OP

    O autor da postagem escolheu o Ubuntu e, sem querer, descobriu a falha em uma distribuição binária. Essa falha é:

    • Assim que os mantenedores de qualquer distribuição binária escolhem a versão de lançamento de um pacote, essa versão é "congelada no tempo" no repositório da distribuição até o próximo ciclo de lançamento, quando uma versão mais recente é escolhida e, em seguida, novamente "congelada no tempo" para esse lançamento. Esse congelamento e substituição ocorrem em ciclos para distribuições binárias. No caso do Ubuntu, esse ciclo de lançamento é a cada 6 meses (representados pelos números de versão secundária .04 e .10, respectivamente). A versão principal corresponde ao ano de lançamento. Os números de versão secundária são:
      • abril
      • outubro

    Sabendo disso, o OP fica com três opções:

    1. Compilar software manualmente - NÃO RECOMENDADO, pois causa o problema que o OP postou.
      • Dica pessoal aqui: NUNCA compile software em uma distribuição binária, a menos que não haja outra alternativa .
      • Listei os métodos alternativos abaixo deste. Compilar software em um sistema com um gerenciador de pacotes faz com que o gerenciador de pacotes não saiba que uma versão mais recente está instalada. Isso também quebra o FHS (padrão de hierarquia de arquivos) estabelecido pela distribuição e gerenciado pelo gerenciador de pacotes. Este é o problema do autor da postagem.
    2. Para software de terceiros, como o CMake, use um PPA ou Personal Package Archive (veja abaixo)
    3. Habilite e verifique o backportsrepositório. Sei que isso parece contraintuitivo, mas o repositório de backports pode conter versões mais recentes de software que foram congeladas no mainrepositório.

    Adicionando o PPA corretamente

    1. Leia a postagem do blog: Repositório Ubuntu CMake agora disponível . Observe que os números de versão estão incorretos.
    2. Verifique os novos números de versão lendo o documento de instalação do PPA e siga esse documento, certificando-se de concluir o processo manualmente ou usando o script de shell vinculado.

    Veja também: Como instalo a versão mais recente do cmake a partir da linha de comando? .

    Estou deixando esta resposta aqui porque a pergunta acima tem 11 anos, mas sinalizei que ela é duplicada.

    Atualizar por comentários

    Adicionando o link abaixo para ilustrar a diferença nos gerenciadores de pacotes, pois acho que o OP pode ter entendido errado para que os gerenciadores de pacotes são usados:

    Fedora - Instalar o CMake

    Observe que a versão do CMake do Fedora também foi "congelada no tempo" e pode ser mais antiga do que a versão atual que o OP está tentando instalar/consertar. O Fedora também possui métodos para habilitar repositórios de terceiros. Veja: Fedora - Repositórios de Terceiros . Veja também: RPMFusion - O repositório de terceiros mais conhecido para distribuições baseadas em RPM.

    Não importa a distribuição, os repositórios de terceiros são adicionados para que o gerenciador de pacotes possa gerenciar as dependências, etc., dos pacotes já instalados, além daqueles instalados a partir dos repositórios de terceiros.

    • 3

relate perguntas

  • Onde devo instalar o sagemath?

  • Como instalo o Adobe Flash player?

  • Como posso configurar o Software Center para instalar software para usuários não root?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve