Artigos para o Debianzine
Guilherme de S. Pastore
guilherme.pastore em terra.com.br
Quarta Setembro 14 21:18:31 BRT 2005
Em Qua, 2005-09-07 às 11:50 -0300, Jefferson Xavier escreveu:
> Segue meu artigo em anexo. É sobre como preparar o Debian Sarge para
> compilar programas.
O artigo tem uma série de problemas, mais que gramaticais ou
ortográficos, técnicos; vou listá-los abaixo para quem tiver interesse
resolver da melhor forma possível.
----------------------------------------------------------------------
> Preparando o Debian Sarge para compilação de programas por Jefferson
> Xavier (Mr Burns)
>
> Como muitos saber
Ugh, por favor, não faça isso (isso é só um incômodo pessoal, no
entanto, estejam livres para ignorar) =D
> o Debian Sarge conta com repositório APT-GET muito vasto e com os mais
A nomenclatura "repositório APT-GET" é incorreta, já que o Debian
Archive tem um formato claramente definido, que possibilita o uso por
qualquer aplicação, sem contar o fato de o padrão a partir do Sarge ser
o aptitude ;)
> Mas é aí que muitos tem uma surpresa. Simplesmente não
> conseguem compilar o programa. O ./configure sempre relata falta de
> algo
Quem disse que tem configure? ;)
> o make não funciona ou quando funciona, não conclui a compilação e
> exibe alguns erros.
O make em si não funciona quando você não o tem instalado, ou quando o
Makefile não é válido =P
> O que provoca isso? A causa para isso é falta de bibliotecas de
> desenvolvimento.
Não necessariamente bibliotecas; qualquer pacote pode ser requerido
durante a construção. gnome-doc-utils, doxygen, dpatch, just to name a
few.
> Como resolver isso? Basta instalar as bibliotecas que o ./configure
> está pedindo para resolver.
Mesmo problema. Além do quê, como a pessoa vai saber onde tá o que o
configure tá pedindo? =D
> Para isso, decidi criar uma lista de pacotes de desenvolvimento
> mais usados e que podem atender a maioria dos programas disponíveis.
> Mas aí me perguntam: Jefferson, quer dizer então que vou poder
> compilar tudo? A minha resposta é não. Tem alguns pacotes que exigem
> bibliotecas que não são normalmente usadas.
Normalmente é algo extremamente pessoal. O que é normal pra você pode
ser absolutamente anormal pra mim, e vice-versa.
> - Procurar no arquivo texto INSTALL, README ou README.1ST o que é
> preciso para compilar o programa;
Esses nomes são amplamente usados, mas nem sempre estarão disponíveis.
Podem estar com qualquer outro nome igualmente sugestivo, o que vai
requerer um pouquinho de cérebro do usuário.
> Para descarregar, recomendo muito o uso da ferramenta gráfica
> Synaptic.
Não é sua função neste artigo recomendar gerenciadores de pacotes, IMHO.
> Para baixá-la, basta dar, como root, um aptitude install synaptic.
> Lembrando que é sempre recomendável atualizar sua lista de APT com
> apt-get update.
Que salada de gerenciadores de pacotes é essa? =D apt-get, aptitude,
synaptic... recomendar um já foge do escopo, ensinar a usar também;
consistência entre os usos é o mínimo que se espera =)
> Lista de bibliotecas a serem instaladas:
Só a título de curiosidade, só dois dos numerosos exemplos que você cita
abaixo são de fato bibliotecas ;)
> autoconf (instale a versão mais nova)
O gerenciador de pacotes deveria se encarregar de instalar a versão mais
nova; não só não é necessário pedir como pode confundir o usuário, pelo
APT não ser facilmente "orientável" a versões de pacotes.
> automake1.9
E o 1.4? E o 1.6? E o 1.7? =D
> bin86
Ainda tem alguém que precisa dessa coisa?
> ccache
Quem é que precisa disso pra ser compilado? =)
> cscope
A pessoa vai compilar ou alterar o código?
> cvs
Me pergunto pra quê alguém precisa de um sistema de controle de revisões
pra compilar alguma coisa...
> doxygen
Olha o meu exemplo aqui! =) É só um sistema de documentação...
> gcc (instale a versão mais nova)
> g++ (recomendo instalar a versão mais nova)
Esses dois são meta-pacotes, você não precisa (e não deve) pedir que a
versão mais nova seja instalada; é pra isso que servem meta-pacotes, no
final das contas.
> g77 (instala a versão mais nova)
Um usuário no máximo intermediário que não sabe nem o que instalar pra
compilar as coisas realmente precisa de um compilador Fortran?
> gnat-3.4
> gobjc-3.4
Pra que especificar uma versão se existem meta-pacotes (gnat e gobjc)
exatamente como no caso do gcc e do g++?
> gdb
Ninguém precisa disso pra compilação, eu acho... ;)
> p2c
Tradutor de código Pascal pra C? Tem alguma coisa que usa isso na hora
da construção? Se tiver, me avisa, pra eu passar beeeem longe =P
> perl
Seu sistema não vive sem ele ;)
> python2.4
Hein? O padrão do Debian é o 2.3
> strace
Mesma coisa do gdb.
> Bom, tem mais coisas que podem ser instaladas. Mas a lista a cima já
> atende a maior parte dos programas disponíveis para compilação na
> internet. Portanto, leiam os arquivos INSTALL, README e COMPILE que
> acompanham muitos programas e que contem lista de bibliotecas para
> compilação que são necessárias.
Se eu quiser compilar o GNOME? Você instalou um monte de lixo na minha
máquina, e não instalou nem 1% do que eu realmente preciso =D
Vou ver se depois eu comento um pouco mais o texto, to atrasado =P
[]s!
--
Guilherme de S. Pastore (fatalerror)
<guilherme.pastore em terra.com.br>
Mais detalhes sobre a lista de discussão Debian-zine