Voiko Python 32 bit tehty ohjelma toimia 64 bit win koneessa. Tein ohjelman Phyton 32:lla ja nyt se ei toimi toisessa 64 bit koneessa. Molemmassa PC:ssä win 7, 32 bit koneessa Phyton 2.7.5/IDLE 2.7.2. Voiko tuota saada toimimaan lainkaan vaan pitääkö tehdä oma Python 64:lla?
Miten se ei toimi? Mitä tapahtuu, kun yrität ajaa kyseistä ohjelmaa? Jos tulee poikkeus, pastea se tänne.
Tulee kommentti "Tämän tiedoston versio ei ole yhteensopiva käytössä olevan Windows-version kanssa. Katso tietokoneen järjestelmätiedoista, tarvitsetko ohjelmasta x86-version (32-bittinen) vai x64-version (64-bittinen), ja ota sitten yhteyttä ohjelmiston julkaisijaan."
Ongelma on ajatuksessani sellainen, että yritin kääntää .py .exe:ksi, python <file.py> -komennolla ja muutamalla py2exe-ohjeella, mutta tunnukseksi jäi edelleen .py, joka sitten muutin manuaalisesti exe:ksi. Tiedosto on nyt sitten ilmeisesti py-tiedosto eikä exe. Joten ei toimi tietenkään. Miten se sitten muutos exe:ksi tehdään oikein? Olisi kiva saada oikein rautalankaohje - on nimittäin ensimmäinen Phyton. Netissä nuo py2exe-ohjeet oli aika vanhoja - en tiedä oliko vika niissä vai tällä päässä.
Sanooko py2exe mitään virhettä? Et ehkä käytä sitä oikein. Suosittelen lukemaan esimerkiksi py2exe tutoriaalin. Oletettavasti py2exe tekee oikein käytettynä .exe tiedoston.
Python-ohjelmia levitetään usein puhtaina lähdekoodiversioina, jolloin ne voivat toimia suoraan eri ympäristöissä. Joskus toki tulkin ja käytettyjen kirjastojen pakkaaminen mukaan on perusteltua.
Miksi olet päätynyt exe-version luontiin?
Chiman kirjoitti:
Miksi olet päätynyt exe-version luontiin?
Exe-versio kannattaa luonnollisesti luoda mikäli ohjelma on suunnattu käyttäjille joilla ei oletusarvoisesti ole Pythonia koneellaan. Exeistä tulee rumia ja isoja, ja varsinkin käyttäessäsi jotain graafista käyttöliittymä (esim TKInter) mukaan tulee useita megoja kaikenlaista ryönää.
Veyton kirjoitti:
Voiko Python 32 bit tehty ohjelma toimia 64 bit win koneessa. Tein ohjelman Phyton 32:lla ja nyt se ei toimi toisessa 64 bit koneessa. Molemmassa PC:ssä win 7, 32 bit koneessa Phyton 2.7.5/IDLE 2.7.2. Voiko tuota saada toimimaan lainkaan vaan pitääkö tehdä oma Python 64:lla?
Itselläni py2exe on pelittänyt aina kunhan seuraavista asioista on pitänyt huolen:
- Varmista, että käytät 32-bittistä py2exeä ja Pythonia.
- Varmista että käyttämäsi py2exen versio tukee käyttämääsi Python-versiota.
- Tee käännös 32-bittisessä Windowsissa. Itse suosin WinXP:tä.
- Py2exen vaatima setup.py on samassa hakemistossa lähdekoodisi kanssa.
- Mikäli ohjelmasi on jaettu useampaan moduliin, luonnollisesti viittaat setup.pyssa siihen tiedostoon, josta ohjelma ajetaan.
Testasin kääntämäni exen WinXP (32-bit), Windows 2000 (32-bit), Windows Vista (32-bit), Windows 7 (64-bit) ja Windows 8 (64-bit) ja se toimi kaikissa. Myöskään ohjelmani (joskin lukumäärältään vähäisiltä) käyttäjiltä ei ole tullut narinaa epäyhteensopivuuksista.
Mikäli kiinnosti: http://www.ling.helsinki.fi/~asahala/parser.html
Aihe on jo aika vanha, joten et voi enää vastata siihen.