Pedro Augusto de Oliveira Pereira (pogoslack@bol.com.br), Pogo, nos enviou o seguinte:
A instalação de aplicativos no GNU/Linux é um dos pontos que mais causam confusão nos iniciantes por ser um pouco diferente. Para fazer a instalação, nós temos 3 opções: o RPM (para distribuições baseadas na Red Hat como Fedora, Conectiva), a instalação através de código fonte (arquivos .tar.gz, .tar.bz2, etc), sendo que estes independem de distribuição e o apt-get, criado pela Debian.Vou tratar cada uma delas separadamente para que eu possa esclarecer as particularidades de cada uma.
Confira o artigo! :-)
Instalação de programas no GNU/Linux
Por: Pedro Augusto de Oliveira Pereira - pogoslack@bol.com.br
A instalação de aplicativos no GNU/Linux é um dos pontos que mais causam confusão nos iniciantes por ser um pouco diferente. Para fazer a instalação, nós temos 3 opções: o RPM (para distribuições baseadas na Red Hat como Fedora, Conectiva), a instalação através de código fonte (arquivos .tar.gz, .tar.bz2, etc), sendo que estes independem de distribuição e o apt-get, criado pela Debian.Vou tratar cada uma delas separadamente para que eu possa esclarecer as particularidades de cada uma.
Instalação através de um tarball
Esse é um dos tipos de instalação mais populares. Aqui o desenvolvedor empacota os arquivos fonte do programa e os disponibiliza para download, junto com alguns scripts para facilitar a instalação no computador do usuário.
Como o desenvolvedor lhe envia os códigos-fonte dos arquivos, será necessário compilá- los para que eles funcionem no seu computador. Para conseguir realizar a compilação de qualquer programa no seu sistema, você deve ter os pacotes de desenvolvimento instalados no seu micro (pacotes como a glibc, automake, etc) Falando assim pode parecer que para instalar aplicativos desse jeito é um bicho de sete cabeças, mas não chega nem perto disso =] A compilação é um processo meio padronizado, ou seja, quase sempre você vai precisar digitar os mesmos comandos para instalar qualquer programa. Vou explicar cada um deles abaixo, lembrando que todos eles devem ser executados dentro do diretório criado quando você descompactou o tarball do programa:
./configure
O ./configure na verdade não é um comando, mas sim um shell script. Quando executado, ele verifica se seu sistema possui tudo o que é necessário para que o aplicativo que você está querendo instalar seja executado corretamente, sem nenhum problema. Além disso, ele também gera um arquivo chamado makefile. Este arquivo contém regras sobre a compilação do programa, sem este arquivo, o próximo comando não conseguirá executar pois não terá idéia do que será necessário fazer.
make
O make usa o makefile gerado pelo ./configure para realizar a compilação do programa.O makefile contém instruções para que o make compile tudo o que for necessário.
make install
Enquanto o make só compila o programa, o make install instala realmente o programa criando os diretórios necessários, colocando os binários no lugar certo, etc. Lembrando que o make é o único dos 3 comandos que requer permissões de root para ser executado, já que este escreve em lugares em que só o root tem permissão.
Então, para instalar um programa:
# tar -xzvf programa.tar.gz
# cd dirdoprograma
# ./configure
# make
# su - root
# make install
Geralmente são esses os passos executados para que você instale um programa a partir do código fonte. A única coisa que pode variar é o nome do script (o primeiro "comando" digitado). Na maior parte das vezes é configure, mas o desenvolvedor pode colocar outro nome nele, como setup, por exemplo. Por isso, é muito recomendado que você leia o arquivo Readme para ter instruções exatas de como proceder para instalar o aplicativo.
Depois de instalado, os binários do aplicativo vão estar em /usr/local/bin. Preste atenção a um detalhe muito importante: se seu aplicativo só funcionar em um ambiente específico (o KDE, por exemplo) os binários dele vão para outro diretório: /usr/local/kde/bin.
Portanto, nunca se esqueça de adicionar esses diretórios na variável PATH de todos os usuários do sistema, para que eles também possam executar o programa.
Você deve estar pensando: "Bom instalar é fácil, mas como eu desinstalo um programa?". Eu respondo: "É mais fácil ainda!".
Você simplesmente vai ter que voltar ao diretório criado pelo tarball quando este foi descompactado e digitar:
# make uninstall
Bem fácil, né? E você achando que instalar e desinstalar programas através dos fontes era difícil.
RPM
O RPM (Red Hat Package Manager) é um dos modos mais inteligentes e fáceis de se instalar, desinstalar, monitorar o que está instalado, atualizar programas, etc. Ele ajuda muito o usuário iniciante pois é muito intuitivo e fácil de se usar. Vou lhe ensinar aqui como instalar, desinstalar, atualizar e verificar se algum pacote está instalado no seu sistema, se aprofundar no uso do RPM é com você.
Instalando
Os pacotes RPM são arquivos binários pré-compilados para uma certa distribuição. Por isso você sempre vai procurar por pacotes RPM feitos para a sua distribuição. Um ótimo lugar para se encontrar pacotes RPM é no site www.rpmfind.net.
O processo de instalação é bem fácil. Vou usar como exemplo de instalação o SIM, um clone do ICQ para GNU/Linux.
Com o pacote em mãos, vá ao console e digite:
# rpm -ivh sim-0.9.2-1.rh90.i386.rpm
Explicando as opções:
-i: instalar
-v: modo verbose. Com esta opção ativada, o rpm irá te falar o que está fazendo.
-h: mostra o progresso da instalação do pacote com caracteres #.
Opa! Tivemos uma mensagem de erro:
error: Failed dependencies:
libsablot.so.0 is needed by sim-0.9.2-1.rh90
sablotron >= 1.0.1 is needed by sim-0.9.2.-1.rh90
Ó meu Deus! E agora??
Calma! O RPM está nos dizendo que para o SIM ser executado corretamente ele necessita do pacote sablotron com uma versão maior ou igual a 1.0.1. Portanto, simplesmente procuramos esse pacote (nesse caso é uma biblioteca) e o instalamos:
# rpm -ivh sablotron-1.0.1-1.rh90.i386.rpm
Depois de instalado, instalamos o pacote principal sim-0.9.2-1.rh90.i386.rpm:
# rpm -ivh sim-0.9.2-1.rh90.i386.rpm
Agora sim conseguimos instalar o SIM. Para executá- lo digite "sim" em um terminal.
Atualizando
Vamos supor que, depois de um tempo, é lançada uma nova versão do SIM e nós queiramos atualizar o nosso programa. Para isso nós utilizaremos a opção -U, assim:
# rpm -U sim-x.x.x-2.rh90.i386.rpm
Assim ele vai atualizar o SIM automaticamente, sem ter que desinstalar a versão antiga e instalar a nova.
Desinstalando
Para você desinstalar um pacote RPM qualquer, basta usar a opção -e:
# rpm -e sim-x.x.x-2.rh90.i386.rpm
Verificando quais pacotes estão instalados
Para você pesquisar se um certo pacote está instalado ou não, você pode usar a opção -qa. Com essas opções o sistema RPM vai consultar toda a base de dados de pacotes RPM e lhe mostrar todos os pacotes RPM que estão instalados no seu micro. É uma boa idéia usar o grep para consultar um pacote específico:
# rpm -qa | grep pacote
Assim, se o pacote estiver instalado, você verá o nome do pacote como única saída do comando. Caso o RPM não ache um pacote com o nome especificado ele simplesmente irá ficar quieto, não te dirá nada.
Bom, isso é o básico sobre RPM. Cabe a você se aprofundar mais no uso desta excelente ferramenta.
APT-GET com suporte a RPM
Conforme você vai usando o sistema RPM você vai perceber que ele tem um sério problema. Muitas vezes você tem que instalar vários pacotes para conseguir fazer um programa funcionar (esses pacotes extras são chamados dependências), e depois de um tempo isso vai começar a te chatear muito.
Pensando nisso, foi criado o sistema APT-GET.
Este sistema funciona como o RPM, mas um pouco mais melhorado. Com ele você pode instalar, desinstalar e atualizar pacotes no seu sistema.Você deve estar se perguntando:
"Mas qual a grande vantagem dele em cima do RPM?"
A maior vantagem do APT sobre o RPM é que ele resolve problemas de dependências automaticamente. Assim, se você tentar instalar um pacote o APT já vai instalar todas as dependências dele automaticamente.
Para instalar o APT você vai precisar baixar o pacote RPM dele e instalá- lo como foi explicado no tópico anterior. Depois de instalá- lo é hora de começar a usar! Digite "apt-get update" para que o apt atualize os pacotes necessários por ele. Lembre- se que neste passo você tem que estar conectado à Internet.
Depois que ele terminar o passo anterior, você já pode começar a usá- lo para instalar, desinstalar e atualizar seus pacotes.
Para instalar um pacote qualquer digite:
# apt-get install pacote
Com o comando acima ele vai instalar o pacote e qualquer dependência necessária.
Para que o apt cheque quais pacotes estão desatualizados no seu sistema e já os atualize digite:
# apt-get upgrade
Para remover algum pacote junto com suas dependências, use:
# apt-get remove pacote
Todas as fontes de onde o APT vai fazer download estão descritas no arquivo /etc/apt/sources.list. Se você quiser adicionar algum lugar de onde o APT deva fazer download de algum pacote, indique- o nesse arquivo. Uma fonte não precisa necessariamente ser um servidor FTP. Você pode adicionar os CD-ROMs da sua distribuição para poder instalar os pacotes contidos neles pelo APT. Você só vai precisar digitar o comando:
# apt-cdrom add
Se você não especificar onde está o seu drive, o APT vai usar as informações contidas no seu arquivo /etc/fstab.
Bom, sobre o APT é isso. Só te mostrei o básico pois o APT é uma ferramenta com muitos recursos. Para escrever esta parte do tutorial, me baseei no excelente arquivo disponível em http://bazar.conectiva.com.br/~godoy/apt-howto/index.html.
É isso! Aposto que agora você vai conseguir instalar qualquer programa (não importa a forma como ele apareça na sua mão!) no seu GNU/Linux. Espero que este artigo tenha te ajudado a esclarecer qualquer dúvida que você tivesse sobre instalação. Mas se ainda sobrou alguma, mande um email para pogoslack@bol.com.br que eu te ajudarei a resolvê- la.
Nome: Pedro Augusto de Oliveira Pereira
Profissão: estudante (17 anos)
Nick: Pogo
email: pogoslack@bol.com.br
Cidade: Caçapava, SP
» Postado por: Renan em março 16, 2004 08:36 PM, 200.242.155:
Gostei muito da matéria mais, notei a falta dos arquivos .deb, não intendi se uso o apt-get install pacote??
» Postado por: Claudinei Matos em março 18, 2004 12:33 PM, 201.1.35.18:
Acho que só faltaram os ebuild do portage (gentoo), mas que também são super simples de instalar:
# emerge xmms
já baixa as dependências e instala também :)
# emerge xmms -pv
pra listar o que vai ser instalado, inclusive as dependências
# emerge --help
para mais opções
» Postado por: Manoel Pinho em março 27, 2004 05:44 PM, 200.165.216:
Uma dica que dou é usar o programa checkinstall
para gerar pacotes (rpm, deb ou tgz) a partir de programas distribuídos por tarballs (.tar.gz) do código-fonte. A única diferença é usar o comando
checkinstall
em vez de make install
após os pasos configure e make. Serão feitas algumas perguntas básicas e seá gerado um pacote para a sua distribuição. Depois é só instalar o pacote gerado.
Assim, é possíver remover, listar o conteúdo do pacote e etc, sem espalhar arquivos "soltos" pelo sistema.
» Postado por: Renato Alvim em março 27, 2004 06:33 PM, 200.217.137:
Excelente.
Claro, faltaram algumas coisas como no caso dos Debian e dos novos programas para Slack, Gentooe agora o GoboLinux.
Mas a dica do checkinstall foi excelente.
Parabéns a todos.
» Postado por: Manoel Pinho em março 27, 2004 06:55 PM, 200.165.216:
Para complementar o tutorial, em relação ao Debian e derivados (Kurumin, Knoppix, etc), é preciso falar da instalação com o dpkg, pois às vezes o arquivo .deb não está num repositório oficial ou não oficial do Debian.
Supondo que então vc tenha baixado o .deb de alguma página e já está no seu micro basta
dpkg -i [NomedoPacote]
(seria o equivalente ao rpm -i )
Pode haver dependências que não estejam instaladas e aí vc deve resolvê-las antes.
Para maiores informações do dpkg:
http://focalinux.cipsga.org.br/guia/inic_interm/ch-dpkg.htm#s-dpkg-introducao
=========================
Sobre instalação de binários no Gentoo:
Essa não é a forma normal, pois a distribuição incentiva a compilação otimizada dos pacotes através do uso do Portage, mas a instalação de pacotes binários (pré-compildos) no Gentoo é feita com o comando
emerge --usepkg pacote.tbz2
Mais detalhes (em inglês) em:
http://www.gentoo.org/doc/en/handbook/handbook.xml?part=2&chap=2#doc_chap3
(não dá para citar todos os detalhes nesse espaço)
» Postado por: Luis Augusto em agosto 3, 2004 09:10 PM, 200.216.117:
Sou iniciante em Linux e mesmo com as explicações sobre instalação de programas n consegui instalar....quando digito ./configure ele n acha...quando coloco setup ele entra no setup geral da maquina....quando digito o comando make ele diz q
eu n pode criar o diretorio...e entro no root e ele n aceita o comando make install pois n tem regra para processar o alvo....
Enfim, n consegui fazer nda....pr favor me ajudem!!!!!
OBRIGADo
» Postado por: jairus em setembro 12, 2004 02:23 PM, 200.191.197:
Tenho o Linux-Kurumin instalado em minha máquina, porém sinto um pouco de dificuldade em instalar programas. Até hoje não consegui instalar qualquer programa no Linux. Espero que alguém ao ler este comentário possa me enviar alguma dica.
Abraços
Jairus
» Postado por: polícia dos pacotes em setembro 25, 2004 10:07 PM, 200.154.69.:
RPM é pacote, tarball é pacote, APT é método de atualização.
Confusão típica de quem ouve o galo cantar e não sabe...
O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação) notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter histórico, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.