Instalando dependências no Fedora

Fala pessoal tudo beleza?

Depois de algum tempo longe do site prometo voltar a movimentar novamente, criando novos posts e mostrar alguns assuntos bacanas, afinal compartilhar conhecimento é o mínimo que posso fazer pra ajudar a comunidade que tanto me ajuda com o desenvolvimento do Linux.

Então hoje vou falar sobre como encontrar mais facilmente as dependências de bibliotecas no Linux, em especial o Fedora.

Ao abrir algum jogo, provavelmente vocês já devem ter se deparado com essa situação:

captura-de-tela-em-2017-02-05-02-05-59

Pois bem, esse é um acontecimento bem comum, no qual o game ou aplicação não encontra a exata versão necessária de uma biblioteca para seu funcionamento. Porém, acontece que alguns programas utilizam versões antigas dos programas… E agora, o que fazer?

Sem problemas, vamos à solução: O gerenciador de pacotes DNF possui algo bem bacana que é poder verificar qual pacote fornece tal arquivo com a sintaxe:

# dnf provides */arquivo

Dessa forma, saberemos qual pacote deverá ser instalado para a execução do programa.

Existem alguns casos que a biblioteca necessária é tão antiga, que não existe em nenhum pacote disponível no repositório. Neste caso, é necessário navegar até o site: pkgs.org e digitar o nome da dependência lá, e assim baixar o pacote necessário, e extraí-lo dentro da mesma pasta que o programa que queremos executar.

Simples assim.

Para facilitar, segue um script pra automatizar a busca e instalação de dependências. Basta salvar o texto a seguir em um novo arquivo e salvá-lo em ~/.local/bin e marcá-lo como executável (chmod +x ~/.local/bin/script):

#!/bin/bash
lib=”$1″
pkg=$(sudo dnf -q provides */”$1″| head -n1| cut -d\. -f1)
pkg=${pkg%-*}
echo $pkg

if [ “$pkg” == “” ]; then
    exit
fi

echo “Pacote: $pkg”
echo “Selecione a arquitetura:”
select i in i686 x86_64 Sair; do
case “$REPLY” in
       1)
       sudo dnf -y install “$pkg.i686”
       break
       ;;
       2)
       sudo dnf -y install “$pkg.x86_64”
       break
       ;;
       *)
       exit
    esac
done

Para executá-lo, basta digitar: ./script nome_da_dependência.

 

Advertisements
Instalando dependências no Fedora

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s