Descobrir biblioteca faltante ao rodar *.exe no wine
Publicado por Perfil removido (última atualização em 10/06/2011)
[ Hits: 11.111 ]
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
Gerenciador Servidor de Arquivos
Convertendo rotas Linux para Fortigate
Script de instalação para Firefox e Thunderbird - new release
Script de backup para banco Firebird
Hora certa - Observatório Nacional
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
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
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (6)