Dependências, mas que raios é isso?

Falei sobre a compilação de programas no Linux, mas não citei algo que é o maior problema neste processo, a resolução de dependências. Fiz isso pensando exatamente em escrever em separado, assim poderia explanar um pouco mais sobre esse assunto, sem poluir em demasia o outro artigo.

Dependências nada mais são que bibliotecas e arquivos que são compartilhados por mais de um aplicativo, fazendo com que seja necessário ter instalado um para que o outro funcione completamente. Muitos não estão acostumados com esse problema, pois acham que em outros sistemas operacionais esse tipo de coisa não acontece, mas infelizmente é uma inverdade, temos sim dependências a serem supridas no Windows por exemplo, contudo em menor quantidade, tendo em vista que a grande maioria dos desenvolvedores colocam tudo que seria necessário no mesmo pacote, mas isso pode trazer alguns inconvenientes, seja a “quebra” de uma DLL até uma alteração no registro que faz o sistema ficar instável e acabar ocasionando uma reinstalação do mesmo.

Já no mundo Linux os desenvolvedores preferem deixar a instalação das principais bibliotecas por conta da distribuição ou do usuário, assim ele poderá ter um maior controle, afinal cada distribuição tem suas características, assim, não importa qual a distribuição você use, com as dependências supridas o software sempre vai funcionar (desde que corretamente escrito, claro).
Quando citei que a compilação é o terror dos novos usuários Linux, muitos dos problemas são por conta das dependências não supridas, por isso sempre é importante ler a documentação de cada pacote, nelas sempre consta quais são as bibliotecas necessárias para aquele software de sua escolha funcionar corretamente.

Para suprir as demandas temos varias opções, desde, a já citado no outro artigo, a instalação dos pacotes de desenvolvimento (geralmente marcados como DEV) ou então o uso do gerenciador de pacotes da sua distribuição, mas isso será explicado melhor em outro artigo, afinal o gerenciador de pacotes é o grande trunfo aqui, alem de verificar as dependências ele já instala os programas, facilitando em muito a vida dos usuários Linux.

Espero ter sanado as duvidas quanto as dependências, a seguir novos artigos ainda sobre a instalação de programas. Até lá.

Tags:

Itens relacionados

Gostou? Adicione aos agregadores:

Adicionar ao Rec6 Adicionar aos Bookmarks do Blogblogs Adicionar ao Google Adicionar ao Digg Adicionar ao Linkk Adicionar ao del.icio.us Adicionar ao Dihitt Adicionar ao Ueba Adicionar ao Digago Adicionar ao Linkto Adicionar ao WebSapiens Adicionar ao Technorati






MaxRaven • Em 11 Outubro, 2007 • Categoria: Linux
Você pode acompanhar os comentários por feed RSS 2.0
Email para o autor | Outro site/blog do autor |

5 Comentários para “Dependências, mas que raios é isso?”

  1. Deixa de fazer FUD, só compila quem quer, apt-get neles e era isto …
    Claro, tu não vai querer entregar um slack para um iniciante …

  2. Calma Rodrigo, vamos chegar lá :D

  3. Eu não consigo gostar do Slackware devido à falta de um gerenciador de pacotes.

    Compilação no braço é para quando não achamos determinado programa nos repositórios da distribuição. Felizemente isso ocorre com cada vez menos freqüência. O segundo caso é quando usamos versões antigas das ditribuições, daí nem sempre são portadas versões atualizadas dos programas (até porque nem sempre é possível tecnicamente). Esta última hipótese resolve-se mantendo uma versão atualizada da distribuição.

    Recentemente tomei conhecimento sobre pacotes DeltaRPM, que são usados apenas no openSUSE e estão sendo testados num repositório experimental no Fedora (pelo que li). Trata-se de pacotes que apenas contém o que foi alterado desde a versão anterior, tornando tudo menor. Uma atualização do OpenOffice que no Ubuntu tem 100MB no openSUSE pode ter alguns KB…

    MaxRaven, você conhece melhor isso? Há algum esforço para colocar algo semelhante nos pacotes deb? Pois eu acho algo fantástico, que irá poupar muito tempo nas atualizações do sistema.

  4. Tinha ouvida falar sobre algo, mas te juro que não olhei a fundo, mas é verdade que RPM pode ser bem menor que atualizações de um .deb por exemplo, podemos dizer que ele pode simplesmente ser um patch que atualiza um OO por exemplo, mas ao meu ver o grande problema é acertar qual rpm é para quem, ou vc baixa de um site que só distribuía pra mandriva, suse ou fedora ou então se lasca, um esforço para evitar esse tipo de coisa já tinha visto tbm, vou dar uma pesquisada para quando for falar de RPM.
    Agora quanto ao Slack, bem sou suspeito, mas nunca senti falta de um gerenciador de pacotes nele, até porque td que precisei tinha pacote pronto e nem para instalar eu usava linha de comando (preguiça mesmo), só joguinhos que tive de compilar, mas o mesmo jogo não tinha nem para o ubuntu, tive de compilar nele tbm.

  5. [...] não usam nenhum dos arquivos acima citados (RPM, DEB e TGZ), mas sim baixa o código fonte, as dependências e faz toda a compilação automaticamente, sem intervenção, contudo essas mesmas distribuições [...]

Deixe seu comentário.