Usuário: Senha:     Cadastre-se GRÁTISAcessar o Fórum
Explorando e Aprendendo
Windows Vista Dicas de Windows Dicas de Linux Dicas de Ubuntu Coisas do Google Coisas do Firefox Downloads diversos Dicas de Wordpress e blogs Como ganhar dinheiro com a Internet Fórum do Explorando Comunidade do Explorando no Orkut Cartão Pré-Pago Megabonus Internacional - Mastercard Internacional Assine nosso feed RSS!

Rodando programas para Windows no Linux, com o Wine

maio 19th, 2007 · 9 Comentários

por Marcos Elias

Como rodar programas do Windows no Linux? Naturalmente seria impossível, pois são dois sistemas completamente diferentes e sem ligações. Os programas escritos para o Windows não rodam no Linux, e vice versa. Mas não é de hoje, um longo e promissor projeto vem caminhando aos poucos, cada vez evoluindo mais: o Wine.

O nome quer dizer "Wine is not an emulator", um nome recursivo, muito usado em programas para Linux (assim como o próprio "Linux = Linux is not Unix"). A idéia do Wine é que ele não é um emulador, ou seja, ele não tenta simular o Windows completamente (com todos os recursos, interfaces, etc), e muito menos depende do Windows, mas ele tenta "ser" um Windows diante dos programas. Diferentemente do VMware, um emulador/virtualizador de PC (entre outros), o Wine é uma implementação livre da API do Windows. A API é um conjunto de funções pré-definidas nos sistemas e programas, no caso, do Windows. Traduzindo… O Wine cria um ambiente de certa forma transparente, tentando rodar os programas do Windows diretamente. Quando um programa do Windows é iniciado, ele chama algumas funções presentes em DLLs do Windows, e o Windows faz a coisa que o programa pediu. Por exemplo, um programa pede para desenhar uma janela na tela com uma frase dentro, então o Windows interpreta isso e desenha a janela com o texto dentro. O que o Wine faz é dar uma de Windows, rodando dentro do Linux, servindo como um "intérprete". O programa pede para o Wine (mas pensa que está pedindo para o Windows) para fazer alguma coisa, então o Wine converte estas instruções em instruções que o Linux possa entender. Na prática, você vê o programa como se ele rodasse diretamente, com uma leve perda de desempenho. Veja este screenshot, onde digito este texto no meu editor Mep Texto rodando no Linux, sendo que o Mep Texto é um software para Windows:

Dependendo do programa o desempenho pode ser muito ruim, especialmente programas que exigem uso intensivo de gráficos, modelagem, edição de vídeo e som, etc. Alguns programas, ele simplesmente não tem como rodar. Programas que usam acesso direto a disco ou dispositivos, e/ou alguns recursos específicos do Windows, sem chances.

O Wine não é perfeito. É muito difícil fazer o que ele faz, na verdade é de se admirar que ele possa funcionar. As funções do Windows são adicionadas à mão, uma a uma, e olha que são muitas! Existem até bugs e diferenças entre algumas versões de Windows que são exploradas e usadas pelos programas, mas ainda assim o Wine consegue se dar muito bem. Estas funções são documentadas em parte pela Microsoft, produtora do Windows, para uso dos programadores que desenvolvem programas para o Windows - afianal, eles precisam conhecer a API e as funções disponíveis no Windows para poder fazer os programas. Por isso que uns programas só rodam em determinadas versões de Windows, muitas vezes eles requerem funções ou arquivos que não existem nos Windows mais antigos. Apesar disso, o funcionamento das funções é oculto e fechado, pois o Windows não é um software de código livre (open source). A galerinha do Wine tem o trabalho de "recriar" as funções usando recursos do Linux, e fazer as mesmas coisas que elas fariam no Windows. Uma função muitas vezes chama outra, que chama outra… É realmente interessante e magnífica a idéia do Wine, praticamente um subsistema Windows "open source". "Subsistema" porque ele depende do Wine e do próprio Linux para funcionar, não é um sistema operacional completo - diferentemente dos emuladores de computador, onde você roda uma instâncica do Windows "verdadeiro" numa máquina virtual, com todos os seus arquivos, funções, gerenciamento de hardware, etc.

A página do projeto do Wine é:

www.winehq.org

Lá você encontra pacotes para algumas distribuições de Linux. É bom instalar os mais recentes, nunca as versões antigas. Depois de 2005, que finalmente o Wine passou para beta (depois de anos e mais anos em alpha!), ele tem ficado muito mais estável e melhor. Nas distribuições baseadas no Debian você pode instalá-lo via apt-get (cito isso porque estou usando agora o Kurumin):

apt-get install libwine wine wine-utils

Você pode baixar estes pacotes ".deb" também no hotsite do Explorando (na seção de downloads) e então instalá-los manualmente com o dpkg, digitando (como root) num prompt de comando:

dpkg -i *.deb

Isso supondo que você esteja na pasta onde só tenham estes 3 arquivos .deb, claro.

Depois de instalado, a primeira coisa que você deve fazer é configurá-lo. Para isso abra o "Executar" ou digite num prompt de comando, com o seu login de usuário:

winecfg

Abre-se um programinha com várias abas ("guias"), e ele cria a pasta ".wine" (oculta) dentro do seu diretório Home. Abordando rapidamente, o que você precisa fazer no winecfg é:

- Na primeira aba, "Applications", você deve definir o sistema que o Wine irá imitar (a versão de Windows). Boa parte dos programas rodam bem ao simular o Windows 98, mas alguns só instalam no Windows 2000 ou XP, então você pode voltar aqui e escolher o sistema desejado, antes de rodar o instalador. Veja:

- Na aba "Drives", clique em "Autodetect". Isso fará com que o Wine crie unidades de disco "virtuais", que são links para pastas específicas do seu sistema Linux. Assim você poderá acessar estas pastas nos programas Windows que rodar, como se fossem unidades ou mapeamentos de locais de rede:

- Particularmente recomendo desativar o som, na aba "Audio", para melhorar o desempenho. Abra a aba "Audio" e desmarque os itens.

- Se você achar o visual do Wine feio (por padrão, lembra a cara do Windows 9x/NT4), então saiba que você pode usar os temas do Windows XP/2003. Na aba "Desktop Integration", clique em "Install theme…" e localize o arquivo de tema (".msstyles") do Windows. A seguir, escolha-o na listinha e clique em "Aplicar", e os efeitos passarão a ser visualizados na próxima vez que você abrir os programas. É bom copiar o tema para uma pasta que esteja sempre disponível durante o uso do Wine, por exemplo, sua própria pasta "home". Em diversos sites na Internet você encontra temas para Windows XP, prefira os zipados (não os executáveis). No hotsite do Explorando também há alguns temas para download.

Feito isso, clique em "Aplicar" e em "OK". Pronto. Agora basta rodar os programas, chamando o Wine, seguido do nome do programa, como em:

wine /mnt/hda1/programa.exe

Com as interfaces gráficas fica mais fácil, por exemplo, no KDE. Clique com o botão direito num arquivo ".exe" e escolha "Abrir com". Digite "wine" no campo da linha de comando, e marque a opção para lembrar a associação. Assim você pode rodar os programas do Windows diretamente, dando um duplo clique sobre eles. Isso é necessário porque os programas precisarão ser executados pelo Wine, e não diretamente, pelo Linux.

O Wine exibe algumas mensagens ao rodar os programas, normalmente você pode ignorá-las ou clicar para nunca mais exibi-las. Ele se isenta de responsabilidades, por exemplo, de que "todos os programas irão funcionar" e também sobre perda de dados. Use por sua conta e risco. Saiba que, por padrão, ele libera acesso com suporte a leitura e escrita na sua pasta "home" (normalmente vista como o drive "H:" nos programas para Windows). Portanto, não rode programas suspeitos; um vírus, por exemplo, poderia apagar seus arquivos. Uma idéia é criar uma conta de usuário só para o Wine, mas isso fica de fora desta dica, por envolver outros conhecimentos. Você pode rodar normalmente os programas que você roda no seu Windows. Se eles funcionarem, beleza; se não rodarem, paciência :( Tem gente que consegue rodar até mesmo o Office e o IE, eu não tentei isso, mas rodei normalmente vários programas.

Ao rodar o "winecfg", o Wine cria uma pasta ".wine" (oculta) dentro da sua pasta "Home", onde guarda as configurações e o disco "virtual", uma pasta que será vista pelos programas como a unidade "C:". Dentro dela você poderá encontrar uma falsa pasta "Arquivos de programas", "Windows", etc. Você pode copiar ou salvar arquivos nelas, normalmente :) As pastas do usuário do Windows (como Documentos, Desktop, etc) são guardadas na pasta "Profiles", dentro da falsa pasta "Windows", assim como era no Windows 9x/Me/NT.

Dica: Se você alterar alguma configuração do Wine e ele não rodar mais, pode apagar a pasta ".wine" do seu "Home" (marque a opção de visualizar arquivos ocultos, no seu gerenciador de arquivos), e então rodar o "winecfg" novamente. Assim, as opções serão recriadas com os valores padrões. Tenha em mente que ao apagar esta pasta, todo o conteúdo da falsa unidade "C:" será apagado, veja se você não tem coisas importantes dentro da pasta "~\.wine\drive_c\Windows\profiles\usuario\Meus documentos", por exemplo.

Obs. para iniciantes no Linux: "~" no caminho de pastas e arquivos, refere-se à sua pasta "home". Em vez de abrir a pasta "/home/mah", por exemplo, posso digitar apenas "~" e o sistema entenderá como a pasta "home" do usuário logado normalmente.

IMPORTANTE: Muitos programas só rodam se o DCOM estiver instalado. Ele é uma atualização para o Windows 98. Você pode procurar na seção de downloads do site da Microsoft (www.microsoft.com) ou na Internet (para usuários do Kurumin, ele vem com o Kokar). Procure pelo DCOM98. Antes de instalá-lo, não se esqueça de rodar o "winecfg" e pedir para simular o Windows 98, senão o instalador não permitirá concluir a instalação. Depois você pode voltar lá e deixar o Windows de sua preferência.

Saiba que… Dependendo da versão (quanto mais recente, melhor) e do seu ambiente gráfico, o Wine cria atalhos para os programas instalados, no menu "Iniciar" do seu sistema. Isso mostra mais ainda a evolução dele, a que ponto chegou!

É isso… Dúvidas e problemas, poste na comunidade do Explorando (fórum), ou procure net afora… Mas que é interessante o projeto do Wine, é sim ;)

Dica ++
Veja um tutorial meu publicado no Guia do Hardware, sobre o Wine. É um tutorial maior, que mostra a instalação, configuração e traz várias dicas:
www.guiadohardware.net/tutoriais/dicas-wine/

Marcadores: Linux · wine

Comunidade: Entre na comunidade do Explorando no ORKUT!

Dicas de Windows? Veja no hotsite Eu Adoro Windows



9 comentários até agora ↓

  • 1 Anonymous // dez 2, 2007 at 10:18

    Linux Is Not Unix? Mas de onde você tirou isso?

  • 2 Marcos Elias // dez 2, 2007 at 10:26

    Sim, anônimo. Do próprio nome:

    L I N U X
    LINUX Is Not UniX

    Ele segue o padrão do Unix, mas não possui relação com ou dependência de do Unix, visto que o Unix era um sistema comercial e fechado na época do começo do Linux. Esse uso de nomes recursivos é coisas do GNU, afinal GNU tambpem, GNU is Not Unix. WINE Is Not an Emulator. E por aí vai :)

  • 3 Marcelo // mai 27, 2008 at 18:42

    Bom nem cheguei a ler direito, mas esse tipo de info é muito util, pois tanto o widows, como o linux tem programas e aplicativos uteis. Se alguem tiver alguma info sobre isso por favor me mandem.

  • 4 Rodigo // jun 5, 2008 at 16:17

    Ola,

    Eu tenho o Wine instalado e instalei alguns software que só tem para o Windows, porem na hora que peço para executar abre-se um janela do progrma, mas logo em seguida o programa fecha sem e fato ter inciado a aplicação. O que pode esta acontecendo?

  • 5 Marcos Elias // jun 8, 2008 at 22:33

    Rodrigo, podem estar acontecendo "várias coisas"….
    O Wine não é "100% perfeito", digamos. Há programas que não rodam pq faltam funções, ou algumas q não estejam implementadas totalmente ainda. Algumas vezes copiando umas DLLs do Windows original e colocando na pasta correspondente do Wine, o programa funciona… Valeria tentar pesquisar no Google pelo programa q vc tá usando, e que fecha, pra ver se não há alguma solução. Até o Office conseguem rodar no Wine :P

  • 6 Antônio Carlos // jul 21, 2008 at 21:43

    Amigo, deu certo a dica do Wine, estou com o Ubuntu 8.04 LTS que instalei com o Wube partilhando com o Vista, funcionou bem, a minha dúvida é porque ele só roda quando coloco o CD da vídeo- aula, com o arquivo no HD, não roda.
    Um abraço

  • 7 Marcos Elias // jul 21, 2008 at 21:49

    Antonio, alguns softwares exigem o CD no drive para funcionar, e verificam o número de série do CD ou outro dado, mesmo que rodasse no Windows "original" e não com o Wine…

    Não sei se seria o caso, mas parece ser isso.

    Já li alguma coisa sobre meios de burlar isso (pelo menos no Windows) mas nunca tentei.

  • 8 Antônio Carlos // jul 21, 2008 at 22:47

    Marcos, o CD a que me refiro é de Video Aula da revista Info sobre o Ubuntu 6.04. No Vista funciona ao instalar o curso no HD.
    O CD é "original", não teria porque burlar, desculpe se não me expliquei corretamente, instalei o Ubuntu a uma semana e ainda estou tentando aprender a usá-lo para migrar definitivamente ao Linux.
    Grato

  • 9 Marcos Elias // jul 21, 2008 at 23:00

    Entendi, Antonio… Mas não sei o que fazer, tbm nunca usei as vídeo aulas da INFO, apesar de já ter visto.

    O que eu quis dizer é que algumas aplicações exigem o CD no drive, geralmente alguns jogos para Windows são assim.

    Não é o caso, pelo visto… Se as videoaulas forem em flash (já vi algumas), vc poderia tentar abrir os .swf no navegador, caso encontre arquivos swf nas pastas do CD.

Deixe seu comentário

Aviso: Veja as regras para comentários, e evite comentários que não adicionam nada.

Promoção GdH Press - Leia trechos dos livros online, sem compromisso :)

Dica: Como criar um vírus? (467)
Como escrever com letras grandes no orkut (174)
Como roubar senhas do MSN e comunidades e profiles do orkut! (124)
Proactive Password Auditor: Como hackear a senha do Administrador! (e todas as outras do Windows) (106)
Atalhos de teclado no Windows (96)
Como roubar Orkut (86)
Dica: Como criar um keylogger! (em Delphi) (73)
Hackeando as senhas no Windows: Guia Definitivo! (59)
Use um domínio personalizado para seu blog! (50)
Como desbloquear celular Vivo de graça! (50)
Elton: Por que todo mundo quando quer desfazer do IE menciona o Firefox como se ele tivesse algum recurso...
Jeronimo: Alguem conseguiu usar essa ferramenta do buscapé ? comigo só deu erro
Eder: bom eu gostaria de roubar o MSN de uns amigos porque eles roubam os meus se alguem puder me ajudar a dar...
Mathias Kroyzanovski: 2760 é dualband, desbloquear é possivel, mas ele não funcionará com outra...
Adriano: eu tenho um (Nokia 2760) ele é da vivo! como eu posso saber se ele é bloqueado? pretendo mudar para...
viczinha: eu quero roubar a senha do MSN de outra pessoa eu sabendo o email dessa pessoa eu quria saber como...
elisangela: usar um dominio faram com que as pessoas assecem meu blog ou nao tem nada ha ver?
elisangela: usar um dominio farao com que as pessoas acessarem meu blog ou nao tem nada ha ver?
arromba: pow eu achei legak esse mep texto mais queria aprender uns modos hacker pois tenho q resgatar um...
Fernando: O sr Ricardo diz que ninguém é vítima, mas com o descaso que ele tem conosco nos faz acreditar...
Cartáo Megabonus, da Unicard - Ligue e faça o seu! Não se esqueça do código indicado :)
Musica Eletronica
Livros de Linux é com o Guia do Hardware, do Carlos E. Morimoto. Leia a introdução e os primeiros capítulos online:
Livro Kurumin 7, Guia Prático
Kurumin 7, Guia Prático
Livro Linux, Ferramentas Técnicas
Linux, Ferramentas Técnicas
Cadastre-se grátis no AondeNamoro e encontre amigos, paqueras, namoradas(os):
AondeNamoro.com! Totalmente Gratuito!


Copyright © 2005-2008 Marcos Elias Picão - Todos os direitos reservados - All rights reserved
Partes do Copyright © 2006-2008 Via Mep S/A - Powered by Mep Produções
Home | Fórum do Explorando | RSS | Sobre este site | Termos de uso e privacidade | Rede de Sites Mep Host / Via Mep