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