Seria melhor ficar no sistema de gerenciamento de pacotes do fornecedor.
Dito isto, se você precisar de uma versão mais recente de um software, pelo menos tente usar pacotes em vez de instalar via make; make build
.
Para o Ruby 1.9.3, alguém criou um arquivo de especificação:
Você deve ser capaz de usar isso para fazer RPMs para o Ruby 1.9.3 e instalar dessa maneira. Se nada mais, facilitará as atualizações (por exemplo, rpm -Uhv ruby-1.9.3
em vez de make; make install
). Você ainda será responsável por gerar novos pacotes Ruby 1.9 para você mesmo, pois as atualizações serão lançadas, é claro.
Em geral, há uma hierarquia de preferência para instalar o software.
-
Software fornecido pelos repositórios do fornecedor. Nesse caso, você usará o sistema de gerenciamento amigável e simpático para instalar e atualizar pacotes mantidos pelo fornecedor (por exemplo, yum, apt-get).
-
Software fornecido por meio de repositórios de terceiros. Deve haver uma mini-hierarquia aqui, onde você tem repositórios altamente respeitáveis (por exemplo, EPEL para CentOS) para aqueles que são menos (por exemplo, alguns PPA do cara no Ubuntu; eu não estou dizendo que as pessoas estão tentando instalar trojans através PPAs, mais que isso normalmente é algo fornecido por alguém que pode não estar mantendo os pacotes, ou que pode não estar procurando por problemas de compatibilidade).
-
Software instalado por meio de pacotes que você mesmo cria. É aqui que o arquivo de especificação mencionado anteriormente irá cair. Você envolverá o processo de compilação no sistema de pacotes da sua distribuição, para que as instalações e atualizações sejam fáceis (por exemplo,
rpm -e
, em vez de procurar em / usr / local por arquivos com nomes criptografados). Você assumirá a responsabilidade de criar novos pacotes à medida que as atualizações surgirem. -
Software instalado sem gerenciamento de pacotes. Este é o clássico
wget software.tgz ; tar xzvf software.tgz ; cd software ; ./configure ; make ; make install
. Geralmente, você irá vomitar arquivos por todo o / usr / local; pode ser difícil obter informações sobre o software (ou seja, você pode simplesmente executarrpm -q
ourpm -ql
) e será difícil removê-lo. Este deve ser um último recurso.
Acho que algo em torno de 3 é o método rvm
mencionado por Alex. Não está realmente nos pacotes do sistema, mas existe uma estrutura em torno da instalação do Ruby. Com Ruby, em um contexto RVM, as gemas associadas a esse Ruby específico serão instaladas via gem install
e gerenciadas em uma estrutura específica, também, embora não seja o sistema de gerenciamento de pacotes do SO.