Por que compilar um rpm da fonte?

1

O que eu sei: src.rpm geralmente contém algum tipo de tar ou código-fonte compactado para o app / library / package Às vezes as pessoas recomendam que você compile a partir da fonte se o pacote não funcionar

O que eu não sei: Por que você recompilaria da fonte? O que preciso compilar da fonte? gcc? xlc?

O que eu gostaria de saber: Hipoteticamente, se você tem um src rpm, você poderia compilar esse rpm para rodar no Fedora e então pegar o mesmo src rpm para o AIX e compilá-lo para rodar no AIX?

    
por HayekSplosives 06.02.2013 / 19:16

1 resposta

4

Bem, o .src.rpm contém o código-fonte e informações sobre onde os vários arquivos e executáveis devem ser copiados para (instalados).

Então, sim, você deve ser capaz de compilar o código tanto no Fedora quanto no AIX. Isso não significa, no entanto, que você também possa "instalar o rpm". A instalação consiste em copiar arquivos para várias pastas do sistema, como /usr , /etc e assim por diante. Diferentes sistemas operacionais esperam que certos arquivos estejam em locais diferentes, portanto não há garantia de que um .rpm para o Fedora possa ser instalado no AIX. Na verdade, é extremamente improvável.

Quanto à compilação, você pode querer compilar a partir da fonte para ter um binário que é otimizado para o seu hardware particular, ou para ativar determinados sinalizadores de compilação, como o local de bibliotecas específicas. Em geral, se você não sabe porque deve compilar a partir da fonte, então você provavelmente não deveria.

Se você escolher compilar, precisará do compilador apropriado. Isso pode ser (entre outros) gcc ou xlc para software escrito em C ou C ++, javac para Java etc. Qual deles você deve usar depende do software que você está instalando e de sua preferência pessoal. Às vezes, o software foi escrito com compiladores específicos em mente (usando certas opções em tempo de compilação) e eles vão reclamar se você tentar compilá-los com outro.

Finalmente, a maioria dos tarballs de origem * nix inclui um Makefile e um script de configuração. Você precisará ter as ferramentas necessárias para usá-las. O script de configuração é geralmente um script BLASH simples, desde que você tenha o BASH instalado, você deve estar bem. O uso do Makefile precisa do comando make . Existem também algumas outras ferramentas básicas (como autoconf e automake e outras) que você precisará. Eu não trabalhei em uma distribuição baseada em RH por muitos anos, mas se a memória serve, este comando deve instalar tudo que você precisa:

yum groupinstall "Development Tools" 
    
por 06.02.2013 / 19:45