Você está na página 1de 4

Rodando programas para Windows no Linux, com o Wine

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/