1. JOHDANTO

Wine on ohjelma, jonka avulla Windows-ohjelmia (mukaan luettuna DOS-,
Windows 3.x, Win32 ja Win64 -ohjelmat) voi ajaa Unix-järjestelmissä.
Wine koostuu ohjelmanlataajasta, joka lataa ja käynnistää Windowsin
ohjelmatiedostoja, sekä kirjastosta nimeltä Winelib, joka toteuttaa
Windowsin API-kutsuja niiden Unix- ja X11-vastineiden avulla. Kirjaston
avulla voidaan myös kääntää Windows-koodia natiiveiksi Unix-ohjelmiksi.

Wine on vapaa ohjelma, ja se on julkaistu GNU LGPL:n alaisena; lisätietoja
lisenssistä on englanniksi tiedostossa LICENSE.

2. PIKAOPAS

Aja Winen lähdekoodin juurihakemistossa seuraavat komennot:

./configure
make

Ohjelmat ajetaan komennolla "wine ohjelma". Lisätietoja sekä apua ongelmien
ratkaisemiseen on jäljempänä tässä tiedostossa, Winen man-sivuilla sekä
ennen kaikkea Internetissä osoitteessa http://www.winehq.org/.


3. JÄRJESTELMÄVAATIMUKSET

Winen kääntämiseen tarvitaan jokin seuraavista:

  Linuxin versio 2.0.36 tai uudempi
  FreeBSD 8.0 tai uudempi
  Solaris x86 9 tai uudempi
  NetBSD-current
  Mac OS X 10.5 tai uudempi

Wine vaatii kerneliltä tuen säikeille. Tämän takia toistaiseksi vain yllä
mainittuja käyttöjärjestelmiä tuetaan; tulevaisuudessa saatetaan lisätä tuki
muillekin käyttöjärjestelmille, joissa on tarvittava tuki säikeille.

Tietoa FreeBSD:lle:
  Pääsääntöisesti Wine ei toimi vanhemmilla versioilla kuin FreeBSD 8.0.
  Osoitteessa http://wiki.freebsd.org/Wine kerrotaan tästä lisää.

Tietoa Solarikselle:
  Wine täytyy luultavasti kääntää GNU-työkaluilla (gcc, gas jne.).
  Varoitus: vaikka gas olisi asennettu, ei ole varmaa, että gcc käyttää sitä;
  voi olla tarpeen joko kääntää gcc uudestaan tai luoda symboliset linkit
  ohjelmista "cc", "as" ja "ld" vastaaviin GNU-työkaluihin.

Tietoa NetBSD:lle:
  USER_LDT, SYSVSHM, SYSVSEM ja SYSVMSG täytyy aktivoida kernelistä.

Tietoa Mac OS X:lle:
  Winen onnistuneeseen kääntämiseen x86:lla tarvitaan Xcode 2.4 tai uudempi.
  Mac-ajuri vaatii OS X 10.6:n tai uudemman, ja sitä ei käännetä 10.5:ssä.


Tuetut tiedostojärjestelmät:
  Wine toimii useimmilla tiedostojärjestelmillä, mutta Samban kanssa on
  ilmoitettu ilmenevän ongelmia. Myöskään NTFS ei tue kaikkia ominaisuuksia,
  joita jotkin ohjelmat vaativat. Natiivin Unix-tiedostojärjestelmän käyttö
  on suotavaa.

Perusvaatimukset:
  Koneella täytyy olla X11:n kehitystiedostot (Debianissa xlib6g-dev,
  Red Hatissa XFree86-devel).

  Luonnollisesti myös make (yleensä GNU make) on tarpeen.

  Lisäksi tarvitaan flex 2.5.33 tai uudempi sekä bison.

Valinnaisia tukikirjastoja:
  configure-skripti näyttää varoituksia, kun valinnaisia kirjastoja puuttuu.
  Osoitteessa http://wiki.winehq.org/Recommended_Packages on tietoa, mitkä
  paketit ovat hyödyksi.

  64-bittisissä järjestelmissä täytyy olla kirjastojen 32-bittiset versiot
  32-bittistä Wineä varten. Sivulla http://wiki.winehq.org/WineOn64bit
  kerrotaan tästä lisää. Sivulla http://wiki.winehq.org/Wine64 kerrotaan
  64-bittisen Winen kääntämisestä (erikseen tai 32-bittisen version kanssa).

4. KÄÄNTÄMINEN

Winen voi kääntää seuraavilla komennoilla:

./configure
make

Tämä kääntää ohjelman "wine" sekä lukuisia tukikirjastoja ja -ohjelmia.
Ohjelma "wine" lataa ja käynnistää Windows-ohjelmia.
Kirjastoa "libwine" ("Winelib") voidaan käyttää Windows-lähdekoodin
kääntämiseen Unixissa.

Komento './configure --help' näyttää asetuksia ja valintoja, joita
käännösprosessiin voi lisätä.

Lisätietoja on osoitteessa https://wiki.winehq.org/Building_Wine

5. ASENNUS

Kun Wine on käännetty, komento "make install" asentaa Winen sekä sen man-sivut
ja joitakin muita hyödyllisiä tiedostoja.

Ennen asennusta pitää muistaa poistaa aiemmat Winen versiot. Poistamista
voi yrittää komennolla "dpkg -r wine", "rpm -e wine" tai "make uninstall".

Kun Wine on asennettu, voidaan ajaa asetusohjelma "winecfg". Sivustolla
http://www.winehq.org/ kohdassa Support on englanninkielisiä lisäohjeita.


6. OHJELMIEN AJAMINEN

Winelle voi antaa joko ohjelmatiedoston koko polun tai pelkän nimen.

Esimerkiksi Notepad eli Muistio voitaisiin ajaa näin:

        wine notepad               (ohjelma yritetään löytää Winen
        wine notepad.exe            rekisterissä luetelluista paikoista)

        wine c:\\windows\\notepad.exe  (kokonainen DOS-polku)

        wine ~/.wine/drive_c/windows/notepad.exe  (kokonainen Unix-polku)

        wine notepad.exe readme.txt  (ajetaan ohjelma parametrin kanssa)

Wine ei ole täydellinen, joten on mahdollista, että jotkin ohjelmat kaatuvat.
Siinä tapauksessa komentoriville tulostuu virheloki, joka on syytä liittää
mukaan, jos raportoi virheestä.


7. LISÄTIETOJA

WWW:	Winestä on paljon tietoa WineHQ:ssa, http://www.winehq.org/.
	Oppaita, ohjelmatietokanta sekä Bugzilla vikojen listaamiseen.
	Täältä kannattaa yleensä aloittaa.

Kysymyksiä:
	Sivulle http://www.winehq.org/FAQ on koottu kysymyksiä ja vastauksia.

Wiki:	Wine Wiki on osoitteessa http://wiki.winehq.org/.

Postituslistat:
	Winen käyttäjille ja kehittäjille on joitakin postituslistoja,
	sivulla http://www.winehq.org/forums kerrotaan niistä lisää.

Virheet:
	Ilmoita virheistä Winen Bugzillaan, http://bugs.winehq.org/.
	Katso kuitenkin ensin Bugzilla-tietokannasta, onko samasta asiasta
	ilmoitettu jo aiemmin.

IRC:	Online-apua voi saada kanavalta #WineHQ palvelimella irc.freenode.net.

Git:	Winen tämänhetkinen kehitysversio on jaossa Git-järjestelmän kautta.
	Sivulla http://www.winehq.org/git kerrotaan tästä lisää.


Jos lisäät jotain tai korjaat jonkin virheen, lähetä toki muutoksesi
(mieluiten komennon git-format-patch avulla) listalle wine-patches@winehq.org,
jotta se voidaan lisätä Winen seuraavaan versioon.

--
Alkuperäisen version tekstistä on kirjoittanut
Alexandre Julliard
julliard@winehq.org

Suomeksi kääntänyt
Lauri Kenttä
lauri.kentta@gmail.com
