quarta-feira, janeiro 10, 2024
  • Login
Linux Descomplicado
Advertisement
No Result
View All Result
No Result
View All Result
Linux Descomplicado
No Result
View All Result
Home Saiba Como

Saiba como compilar e instalar programas Linux distribuídos diretamente pelo código-fonte [tar.gz]

17 de agosto de 2019
Reading Time: 7 mins read
0
Saiba como compilar e instalar programas Linux distribuídos diretamente pelo código-fonte [tar.gz]
151
SHARES
7.2k
VIEWS
Compartilhar no FacebookCompartilhar no Twitter

Hoje em dia, instalar programas no Linux se tornou a coisa mais simples de se fazer no sistema. Dependendo da distribuição Linux, você tem recursos complementares que facilitam ainda mais o processo.

Gerenciadores de pacotes e repositórios oficiais, mantidos pela comunidade mantenedora da distribuição, enriquecem o processo de instalação dos programas. Contudo, em muitos momentos você se depara com programas disponibilizados diretamente pelo código-fonte. Assim, cabe ao usuário ter conhecimento prévio para compilar e instalar programas Linux distribuídos diretamente pelo código-fonte, normalmente compactados via tar.gz.

Contextualizando

As distribuições Linux, ao longo do tempo, vem melhorando e criando métodos para facilitar a instalação de pacotes no Linux. Gerenciadores de pacotes, bem como: apt e yum, são exemplos legados dessas mudanças. Atualmente, existem projetos que visam a universalização do modo e distribuição de programas para os sistemas Linux. Entre eles, destaco o Snap e Flatpak; Canonical e Red Hat como mantenedoras, respectivamente.

Entretanto, vão aparecer situações onde você não terá nenhuma dessas opções disponíveis… pois alguns desenvolvedores de softwares disponibilizam seus programas diretamente pelo código-fonte (source) – que por sinal era, nos primórdios, o único método utilizado para instalação de programas no Linux (algumas distribuições ainda mantêm essa técnica com frequência). Em resumo, você tem acesso a um arquivo compactado no formato .tar.gz (maioria das vezes), contendo o código-fonte do programa, e a instalação consiste em compilar e instalar os executáveis gerados na máquina.

Mas por quê ainda se preocupar com isso se existem pacotes pré-compilados para instalação?!

SAIBA MAIS
Pacotes pré-compilados são pacotes já compilados e distribuídos num arquivo pronto, com dependências já configuradas, em um formato simples de instalar (.deb – Debian e .rpm – Red Hat, por exemplo).

Devido às diferenças que existem entre uma distribuição e outra um pacote do Fedora não funcionará no Debian, por exemplo. Assim, essa técnica garante suporte a todas as distribuições Linux, universalmente! Ou seja, baixando um programa distribuído a partir do código-fonte (source), não será preciso se ater a qual distro Linux você está usando; pois, verificada as dependências necessárias, será possível compilar e instalar o programa.

Isso se deve ao fato de que essa maneira de distribuir os programas, diretamente pelo código-fonte (source), não é feita por empacotamento pré-compilado (pacote .deb ou .rpm, por exemplo). Assim, cabe ao usuário ter conhecimento prévio para compilar e instalar programas Linux distribuídos diretamente pelo código-fonte, normalmente compactados via tar.gz.

SAIBA MAIS
Compilar significa transformar o código-fonte, escrito pelo programador, nos arquivos binários que são executados pelo sistema.

Por outro lado, um problema, em compilar e instalar programas a partir dos fontes, é que o processo é demorado e, para muitos, nem sempre simples. É preciso ter instalado uma grande quantidade de compiladores e bibliotecas, necessários para compilar os mais diversos programas. E isso causa bastante dificuldade para os usuários, principalmente iniciantes.

Em 4 passos…

Resumindo o processo de instalação de programas disponibilizados a partir do código-fonte, informo que o mesmo se dá em 4 passos:

1- Descompactar o arquivo tar.gz que contém o código-fonte;
2- Resolver dependências necessárias para a instalação correta do programa – cada programa possui suas próprias dependências, e isso torna processo demorado e um pouco mais complicado. Cada programa tem sua peculiaridade;
3- Compilar;
4- Instalar;

DETALHES
Neste tutorial usei como exemplo o programa Pidgin IM e o sistema OpenSUSE Tumbleweed

1- Baixar e descompactar o arquivo tar.gz

Primeiramente, faça o download do arquivo pidgin-2.11.0.tar.gz AQUI [ Versão 2.11.0 ]

O arquivo baixado é um tarball, geralmente é identificado através do uso de duas extensões “.tar” e “.gz”, combinadas para formar “.tar.gz”. Uma extensão combinada simples, .tar.bz também é popular. Esse formato usa o utilitário tar para criar um único tarfile com todo o conteúdo do diretório – o código-fonte do programa, no caso.

Para descompactar o conteúdo do arquivo arquivo pidgin-2.11.0.tar.gz, você deve executar o comando:

tar -xzvf pidgin-2.11.0.tar.gz

Entre no diretório descompactado:

cd pidgin-2.11.0

O conteúdo do diretório contém o código-fonte da aplicação e o arquivo Makefile, entre outros arquivos. Essa estrutura garante um programa distribuído a partir do código-fonte (source) 😉 Por isso, nem todo arquivo “tar.gz” significará um programa distribuído dessa forma; poderá ser apenas um arquivo compactado.

SAIBA MAIS
O Makefile é um arquivo para configuração de compilação utilizado pelo programa make, cuja ideia é simplificar e agilizar a compilação de programas.

2- Resolver dependências

Esta etapa pode ser considerada a mais “complexa” do processo, pois caso as dependências necessárias, da aplicação, não sejam atendidas o código-fonte não poderá ser compilado e instalado, futuramente. E cada aplicação possui um leque diferente de dependências.

No caso do programa Pidgin existem algumas dependências que precisam ser resolvidas – ou seja pacotes que já precisam estar instalados no sistema, pois caso contrário dará erro no processo!

Em distribuições derivadas do Debian, a principal dependência é pacote de compiladores que contém todas as ferramentas básicas para compilação de um programa. Muito conhecido, chamado de build-essential:

sudo apt-get install build-essential

Como usei o OpenSUSE, o pacote equivalente é o devel_basis:

sudo zypper install -t pattern devel_basis

Assim, depois de satisfazer as dependências do sistema, é preciso resolver as pendências da aplicação. Para isso, você DEVE executar o comando:

./configure

Esse comando verifica todas dependências que o programa precisa, como se o pacote de compiladores está instalado; por exemplo. O prefixo ./ diz ao sistema Linux para procurar o arquivo de configuração no diretório atual e executá-lo. Assim, você precisa estar dentro do diretório do programa (pidgin-2.11.0) para poder executar esse comando:

[
….
] checking for strdup… yes
checking for strstr… yes
checking for atexit… yes
checking for setlocale… yes
checking for getopt_long… yes
checking for inet_aton… yes
checking for __res_query in -lresolv… yes
checking for gethostent in -lnsl… yes
checking for socket… yes
checking for getaddrinfo… yes
checking for inet_ntop… yes
checking for getifaddrs… yes
checking for socklen_t… yes
checking for struct sockaddr.sa_len… no
checking whether IPV6_V6ONLY is declared… yes
checking for special C compiler options needed for large files… no
checking for _FILE_OFFSET_BITS value needed for large files… no
checking for dlopen… no
checking for dlopen in -ldl… yes
checking for library containing ceil… -lm
checking for fileno()… yes
checking for the %z format string in strftime()… yes
checking whether NLS is requested… yes
checking for intltool-update… /usr/bin/intltool-update
checking for intltool-merge… /usr/bin/intltool-merge
checking for intltool-extract… /usr/bin/intltool-extract
checking for xgettext… /usr/bin/xgettext
checking for msgmerge… /usr/bin/msgmerge
checking for msgfmt… /usr/bin/msgfmt
[
….
]

Se tudo correr bem, você não verá quaisquer erros:

[
…
] Build with Perl support……. : yes
Build with Tcl support…….. : yes
Build with Tk support……… : yes

Print debugging messages…… : no

Pidgin will be installed in /usr/local/bin.

configure complete, now type ‘make’

Caso apresente algum erro, basta examinar a saída do comando ./configure e instalar/configurar todas as dependências ausentes usando seu gerenciador de pacotes. Execute ./configure quantos vezes for preciso até que você não veja mais erros 😉

No meu caso (com o openSUSE Tumbleweed instalado), tive alguns erros que avisaram a ausência de alguns pacotes. Portanto, segue lista de todos os pacotes que foi precisa instalar no meu ambiente de testes:

AVISO
Cada sistema vai apresentar resultados diferentes. Pois, poderão surgir dependências que estarão resolvidas e outras não. Por isso, essa etapa requer mais atenção do usuário Linux.
sudo zypper install intltool glib2-devel gtk2-devel libXss1 libXss.so.1 libXss-devel libSM-devel meanwhile-devel libgnutls-devel tcl-devel tk-devel

3- Compilação

Depois de ter resolvido todas as dependências, você deve compilar o programa. Use o comando make para fazer isso:

make

Este processo pode demorar alguns minutos, dependendo do programa. Certifique-se de que a saída não exibirá quaisquer erros antes de continuar para o próximo passo 😉

4- Instalação

Pronto… não tendo apresentado nenhum erro até agora, você precisa instalar o programa. Basta executar sudo make install. Este passo move todos os binários em seu local correto no seu sistema para que o programa fique pronto para usar:

sudo make install

Programa instalado!!
 
Mas, se você desejar remover o programa, que acabou de instalar, basta entrar no diretório que você instalou o programa e executar os 2 comandos abaixo:

sudo make uninstall
sudo make clean

Por fim, informo que para instalar a maioria dos programas a partir do código-fonte (source), você passará pelas mesmas situações do exemplo. Contudo, com algumas diferenças das mostrados aqui. Por exemplo, você pode precisar usar cmake em vez de make. Por isso, sempre leia o arquivo “README” contido no diretório de cada programa!! Além dele, normalmente, existe o arquivo “Install” também 😉


Via | MakeTechEasier

Tags: código-fontecompilarinstalaçãoProgramastar.gz

Gosta de Linux?! Receba materiais exclusivos!

Inscreva-se gratuitamente e receba, com exclusividade, postagens e materiais ocultos para o público em geral. Inclusive, promoções e novidades em primeira mão!

Entrar na lista de e-mails

Related Posts

Como usar o Microsoft Word no Linux – Guia completo
Dicas

Como usar o Microsoft Word no Linux – Guia completo

12 de fevereiro de 2023
8 programas Linux essenciais que todo usuário deveria usar
Dicas

8 programas Linux essenciais que todo usuário deveria usar

12 de janeiro de 2023
Iniciante

Guia completo para iniciantes sobre como instalar programas no Linux

25 de agosto de 2019
SIMET Box – código-fonte do sistema de medição de tráfego de internet foi liberado pelo NIC.br
Noticias

SIMET Box – código-fonte do sistema de medição de tráfego de internet foi liberado pelo NIC.br

29 de maio de 2017
Manjaro-Architect – instalação do sistema sob medida
Dicas

Manjaro-Architect – instalação do sistema sob medida

30 de julho de 2019
É possível executar aplicações do MacOs no Linux?
Distribuições

É possível executar aplicações do MacOs no Linux?

8 de fevereiro de 2017

Últimas novidades

A Emoção dos Bônus de Sorteio Semanal no BC Games: Como Aumentar Suas Chances de Vitória

by Linux Descomplicado
7 de novembro de 2023
0

O mundo dos jogos online é vasto e repleto de oportunidades para diversão e, às vezes, recompensas financeiras. Entre esses...

Jogos no Metaverso: Explorando a próxima fronteira dos mundos virtuais

Jogos no Metaverso: Explorando a próxima fronteira dos mundos virtuais

by Linux Descomplicado
30 de agosto de 2023
0

Nos últimos anos, o mundo dos jogos vem passando por uma revolução que está redefinindo a forma como entendemos os...

Saiba como acompanhar os jogos da Copa do Mundo no Linux

Saiba como acompanhar os jogos da Copa do Mundo no Linux

by Linux Descomplicado
14 de outubro de 2022
0

Conheça algumas estratégias adotadas por quem deseja acompanhar os jogos da Copa do Mundo 2022 usando o Linux

Como aproveitar o uso de proxy móvel no seu negócio?

Como aproveitar o uso de proxy móvel no seu negócio?

by Linux Descomplicado
31 de agosto de 2022
0

Dados são a nova moeda do mercado, e quanto mais uma empresa conhece as necessidades e desejo dos usuários, mais...

Metaverso: o que precisamos entender sobre esse conceito

Metaverso: o que precisamos entender sobre esse conceito

by Linux Descomplicado
23 de maio de 2022
0

Se um dia alguém dissesse ser possível combinar realidade virtual imersiva, MMORPG e web, isso seria chamado insanidade. No entanto,...

Load More

Publicaçõesmais recentes

5 Razões pelas quais o Linux Mint é a Distribuição perfeita para usuários vindos do Windows
Distribuições

5 Razões pelas quais o Linux Mint é a Distribuição perfeita para usuários vindos do Windows

by Linux Descomplicado
4 de dezembro de 2023
0

Existem muitas versões do Linux que são boas para iniciantes, mas o Linux Mint é especialmente voltado para pessoas que...

Read more
Linux ou Windows: Guia completo para você fazer a escolha certa
Dicas

Linux ou Windows: Guia completo para você fazer a escolha certa

by Linux Descomplicado
3 de dezembro de 2023
0

Escolher entre Linux e Windows é uma decisão crucial que afeta diretamente a experiência do usuário no mundo da tecnologia....

Read more
Noticias

A Emoção dos Bônus de Sorteio Semanal no BC Games: Como Aumentar Suas Chances de Vitória

by Linux Descomplicado
7 de novembro de 2023
0

O mundo dos jogos online é vasto e repleto de oportunidades para diversão e, às vezes, recompensas financeiras. Entre esses...

Read more
Jogos no Metaverso: Explorando a próxima fronteira dos mundos virtuais
Noticias

Jogos no Metaverso: Explorando a próxima fronteira dos mundos virtuais

by Linux Descomplicado
30 de agosto de 2023
0

Nos últimos anos, o mundo dos jogos vem passando por uma revolução que está redefinindo a forma como entendemos os...

Read more
SaaS, IaaS, PaaS e FaaS: tipos de serviços em nuvem, suas vantagens e aplicações
Administradores de Rede

SaaS, IaaS, PaaS e FaaS: tipos de serviços em nuvem, suas vantagens e aplicações

by Linux Descomplicado
2 de agosto de 2023
0

Os serviços em nuvem trazem muitas vantagens para qualquer pessoa ou empresa que utilize arquivos digitais. Mas você sabe a...

Read more
Criação de Apps: do Desenvolvimento à Publicação
Tecnologia

Criação de Apps: do Desenvolvimento à Publicação

by Linux Descomplicado
31 de maio de 2023
0

Até 2022, a Google Play Store somava mais de 3,3 milhões de aplicativos móveis disponíveis para download. Já na Apple...

Read more
Load More

Mantenha-se conectado

  • Área Exclusiva 200 Membros
  • 23k Fãs
  • 8k Seguidores
  • 500 Leitores
  • 100 Seguidores
  • 1k Inscritos
  • 2k Leitores

Quer receber as novidades mais recentes no seu e-mail? Informe-o no campo de e-mail e clique em Assinar! Mais de 2000 já se inscreveram

*Sem spam, eu prometo :).

ATENÇÃO
Os comentários abaixo são de inteira responsabilidade de seus respectivos autores e não representam, necessariamente, a opinião do Linux Descomplicado.

Deixe uma resposta Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Next Post
Histórico de desenvolvimento do kernel Linux exposto em gráficos

Histórico de desenvolvimento do kernel Linux exposto em gráficos

O Linux Descomplicado nasceu, em 2011, com o intuito de trazer informações relevantes e promover fácil acesso a todos usuários interessados em aprender a usar o sistema Linux, independentemente se está iniciando ou tem certa experiência com Linux.

Participe

  • Publique seu artigo
  • Login como articulista
  • Pesquisa – sobre os leitores

Editorial

  • Contato
  • Anuncie aqui
  • Política de privacidade

Newsletter

Quer receber as novidades mais recentes no seu e-mail? Informe-o no campo de e-mail e clique em Assinar! Mais de 2000 já se inscreveram

*Sem spam, eu prometo :).

Promoções e materiais exclusivos!

Cadastre-se gratuitamente
  • #9720 (sem título)
  • Anuncie aqui
  • Contato
  • Excluir conta
  • Home
  • Login Customizer
  • Newsletter
  • Newsletter personalizada
  • Pesquisa – sobre os leitores
  • Política de privacidade
  • Promoções e novidades
  • Publicações especias
  • Publicações favoritas
  • Publique seu artigo
  • Saiba como você pode contribuir
  • Sobre
  • Termos de uso

© 2024 JNews - Premium WordPress news & magazine theme by Jegtheme.

No Result
View All Result
  • #9720 (sem título)
  • Anuncie aqui
  • Contato
  • Excluir conta
  • Home
  • Login Customizer
  • Newsletter
  • Newsletter personalizada
  • Pesquisa – sobre os leitores
  • Política de privacidade
  • Promoções e novidades
  • Publicações especias
  • Publicações favoritas
  • Publique seu artigo
  • Saiba como você pode contribuir
  • Sobre
  • Termos de uso

© 2024 JNews - Premium WordPress news & magazine theme by Jegtheme.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In