Descobrir biblioteca faltante ao rodar *.exe no wine
Publicado por Perfil removido (última atualização em 10/06/2011)
[ Hits: 11.093 ]
No windows (e wine) , as bibliotecas do sistema são arquivos *.dll, e elas são necessárias para o funcionamento de certos programas.
Caso você rode um programa que necessite de uma biblioteca que não pode ser encontrada no prefixo do wine (/home/usuário/.wine), o wine retornará um erro dizendo que não foi possível rodar o programa.
O script shell que fiz irá informar, através de um diálogo do zenity, qual é a biblioteca (dll) faltante para que o usuário possa copiar tal biblioteca de uma partição com windows XP instalado ou de um site com repositório de DLLs.
----------------------------
Instalação
Para instalar o script é simples, para isso apenas siga os seguintes passos NA ORDEM:
1) renomeie o executavel do wine de "wine" para "pine" ('pine', com 'P'), se estiver com preguiça, o seguinte comando pode fazer isso:
sudo mv /usr/bin/wine /usr/bin/pine
2) Descompacte o arquivo wine.zip em qualquer lugar, não vou explicar como isso é feito, você já DEVE saber
3) copie/mova o arquivo wine (que foi descompactado) para a pasta /usr/bin, como ROOT, obviamente, o seguinte comando faz isso:
sudo mv /home/lucas/wine /usr/bin
Isso supondo que você descompactou o arquivo na sua pasta local e que seu nome seja Lucas...
No mais, estes três passos se resumem em você substituir o executável original do wine (em /usr/bin) pelo script modificado que eu fiz, SENDO OBRIGATÓRIO RENOMEAR o executável original do "wine" para "pine", pois o script irá usá-lo (não remova o arquivo original, apenas RENOMEIE-O, pois ele ainda será usado)
No mais, estou indo embora. Contato (para dicas/questionamentos/foto de mulé pelada): lucas.ta23@gmail.com
#! /bin/bash if [ $# = 0 ] ; then echo "Nenhum parâmetro foi passado ao wine, por favor, execute o comando 'wine --help' para mais informações" && exit 1 fi case $1 in --help) pine --help ;; --version) pine --version ;; --*) echo "O parâmetro passado não existe, por favor, execute o comando 'wine --help' para mais informações" ;; *) dllerror="\n\t$(pine $* 2>&1 | grep err:module:import_dll | cut -d " " -f 3 | sed 's/ /\n\t/g')" appname=$(basename $1) if [ -n $dllerror ] ; then zenity --title="*.dll faltante" --error --text="O programa $appname não pôde ser executado corretamente devido a falta da(s) biblioteca(s):$dllerror" fi ;; esac
Configurando JDK no PATH no Linux (qualquer distro)
Somar e exibir resultados gerados pelo monitoramento do DNS
Papéis de parede aleatórios direto da internet
Buscar conteúdo digitado em sites de busca
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Melhorando a precisão de valores flutuantes em python[AJUDA] (5)
Instalação Uefi com o instalador clássico do Mageia (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta