Diferença entre compilar a fonte e instalar o pacote? [duplicado]

1

A maioria das distros tem um gerenciador de pacotes que permite instalar programas sem muito esforço. Para pacotes com fonte, você sempre pode compilar você mesmo. Existem diferenças notáveis entre os resultados da compilação manual e a instalação de um pacote? (suponha que o código base seja o mesmo)

    
por nabulator 01.02.2017 / 22:49

3 respostas

1

Are there are notable differences between the results of compiling by hand and installing a package? (assume the code base is the same)

Existem todos os tipos de sinalizadores de tempo de compilação que podem ser usados para ajustar os binários resultantes; por exemplo, para desativar determinados recursos ou otimizar o tamanho do código em vez da velocidade.

Além disso, a convenção usada por muitos pacotes com um sistema de compilação acionado por configure é que, quando você instala manualmente, o pacote entra em /usr/local por padrão, em oposição a /usr .

O Gentoo compila a partir da fonte. Você obtém a conveniência de um gerenciador de pacotes sem sacrificar qualquer flexibilidade (você sempre pode ajustar um ebuild em uma sobreposição local).

    
por 01.02.2017 / 22:58
1

... a resposta é muito simples, é que o programa já compilado, "pronto para rodar" segue um padrão, memória, processador, sistema de arquivos e assim por diante ... já com o código fonte, para compilar além de Permitir você faça suas alterações! Se você desejar! ", O programa produzido será mais eficiente justamente por isso foi feito, criado compilado em sua máquina, então você o conhece muito bem, ou seja, memória, vídeo, disco, etc ... e quase o mesmo que você Comprar um terno em uma loja em uma medida já padronizada ou vá em um alfaiate e peça um com suas medidas, o que é muito mais justo e confortável.

    
por 01.02.2017 / 23:15
1

Os binários resultantes da compilação da fonte provavelmente não vão diferir muito (dependendo dos sinalizadores do compilador e dos patches de distribuição) do que você obtém em um pacote.

O pacote virá com muitos extras convenientes que normalmente não são manipulados pelo tradicional configure, make, make install dance:

  • Método fácil de atualizar
  • Método fácil de desinstalar um pacote. Alguns projetos incluem a opção de executar make uninstall , mas não todos, e eles exigem que você mantenha as fontes disponíveis para todo o software instalado
  • Instalação automática de dependências. Pacotes dependem de outros pacotes que o gerenciador de pacotes irá instalar para você. Você terá que instalar você mesmo as dependências corretas antes de poder compilar o código
  • Arquivos unitários para SystemD ou scripts para init.d serão instalados pelo pacote
  • Diretórios padrão, arquivos de configuração, usuários e grupos serão criados
por 01.02.2017 / 23:20