osxguy
04-08-2006 04:03:26
I would like to do development on Linux and generate easy-to-install games for Linux/Windows/Mac users.
I use Python for development. I do primary development on Linux and OS/X. I don't have a modern copy of Windows available to me, and don't plan on buying Windows again anytime soon. However, many of my potential customers run Windows.
Now, there is a program called py2exe that can make a single Windows executable file from a Python program. This way, Windows users can install my Python/PyOgre games. The problem is that py2exe requires Windows to run. It doesn't work on Linux even using WINE - there are unsuccessful reports of people trying.
Basically I have three main questions:
1. If I develop my Python game with PyOgre on Linux against stable, released binary versions of Python, OGRE and PyOgre, will my Python code work on Windows if the Windows user installs the same version of OGRE (for their platform), the same version of PyOgre (for their platform), the same version of Python, and my Python source code and media?
2. Is there an easy way of creating an installable package for Windows users without using Windows? Something that would install all of the items in (1) automatically?
3. Is (shudder) Java or Jython a better language choice for this kind of write-once, deploy-anywhere scenario?
I've been thinking about Jython, but the problem is that PyOgre uses SWIG bindings to native C++ code, and this generates a platform-specific binary module imported by Python, so even with Jython the result wouldn't be platform-independent as long as we're using SWIG Python-to-C++ bindings.
Unfortunately I'm starting to think that a pure Java solution (ogre4j) might be the only way to develop easy-to-install Windows software without using Windows.
Comments?
I use Python for development. I do primary development on Linux and OS/X. I don't have a modern copy of Windows available to me, and don't plan on buying Windows again anytime soon. However, many of my potential customers run Windows.
Now, there is a program called py2exe that can make a single Windows executable file from a Python program. This way, Windows users can install my Python/PyOgre games. The problem is that py2exe requires Windows to run. It doesn't work on Linux even using WINE - there are unsuccessful reports of people trying.
Basically I have three main questions:
1. If I develop my Python game with PyOgre on Linux against stable, released binary versions of Python, OGRE and PyOgre, will my Python code work on Windows if the Windows user installs the same version of OGRE (for their platform), the same version of PyOgre (for their platform), the same version of Python, and my Python source code and media?
2. Is there an easy way of creating an installable package for Windows users without using Windows? Something that would install all of the items in (1) automatically?
3. Is (shudder) Java or Jython a better language choice for this kind of write-once, deploy-anywhere scenario?
I've been thinking about Jython, but the problem is that PyOgre uses SWIG bindings to native C++ code, and this generates a platform-specific binary module imported by Python, so even with Jython the result wouldn't be platform-independent as long as we're using SWIG Python-to-C++ bindings.
Unfortunately I'm starting to think that a pure Java solution (ogre4j) might be the only way to develop easy-to-install Windows software without using Windows.
Comments?