[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: compilar aplicação para uso local



Use containers.

./helio

On Fri, Oct 7, 2022, 19:57 Antonio Terceiro <terceiro@debian.org> wrote:
Oi,

On Thu, Oct 06, 2022 at 11:39:18PM -0300, G.Paulo wrote:
> Saudações, prezados.
>
> O assunto não é bem off-topic, mas é um pouco.
>
> Uma necessidade que tenho às vezes é instalar uma aplicação para rodar
> num computador, mas sem fazer a instalação a partir da distribuição. No
> exemplo mais recente que tive, precisei do gnuplot 5.x, mas a
> distribuição só tinha a 4.x. Sem chance de pedir para o administrador
> fazer uma instalação especial para mim com a versão 5.x (demoraria
> meses). Então a pergunta é a seguinte: é fácil/difícil,
> possível/impossível baixar os fontes e compidar a aplicação inteira?
> Veja que tem uma infinidade de bibliotecas que, provavelmente, não
> serão das mesmas versões que as instaladas no sistema. Há algum caminho
> que deva seguir ou tópico específico que deva estudar? Estou falando de
> Debian e de centOS.

O trabalho de fazer isso é o que se chama de backport, e é exatamente o
que o repositório backports to Debian contém: versões mais novas -- de
aplicações, normalmente -- compiladas para uma versão mais antiga do SO.
No Debian, pra entrar no backports a versão normalmente já tem que estar
disponível no testing (i.e. a próxima versão do SO). A partir daí, é
baixar o pacote fonte que está no testing, e compilar ele no stable.

Por exemplo o mantenedor do LibreOffice no Debian faz um trabalho
excelente com isso. Quase sempre, no stable backports você acha
a mesma versão do LibreOffice que está no testing.

O quão bem isso funciona, depende de cada pacote. Em alguns casos,
simplesmente funciona. Em outros, a diferença de versões de bibliotecas
etc pode criar alguns problemas, e você pode precisar aplicar algum
patch no backport pra conseguir usar. Em outros casos, você vai precisar
também fazer um backport de uma ou mais dependências.

Eu não conheço nenhuma documentação específica sobre isso, tudo que eu
sei sobre o assunto é baseado na minha experiência fazendo backports na
prática, a maioria no Debian e alguns pra uso privado.

Uma outra opção que você tem é usar containers, ou uma máquina virtual,
assim você pode rodar uma versão mais atual do SO ou mesmo outro SO base
completamente diferente pra rodar a aplicação mais nova que você
precisa.

Reply to: