[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] Update on Pygame builds



Hi Paul,

The Windows pre-built are the external libraries pygame depends upon, such as SDL, SDL_image, libpng, freetype2. You can find a list in the prebuilt-template subdirectory. These are included in the Windows installer as pre-built dlls. When doing a Windows build with setup.py, the script looks for the dll's and associated C header files in a pygame subdirectory called prebuilt. A x86 Windows example of prebuilt can be downloaded from https://bitbucket.org/pygame/pygame/downloads/prebuilt-pygame1.9.2pre-msvcr100-win32.zip .

As I have only Windows XP, I cannot build or test x86_64 versions of these libraries. Also, I tried to keep C runtime linkage compatible with the Python version. However, changes made to MinGW made linking to C++ code to mscvr100.dll too difficult, so I used Visual Studio instead. Personally, I consider this too much of a headache.

I believe the C runtime library compatibility is unnecessary, so existing library binaries can be used. The only problem spot I see is in imageext.c, where open C files are passed to the libpng and libjpeg libraries. But these libraries also except IO callbacks, so the FILE * pointer can be kept in imageext.

If there are any further questions I am here to help,

Lenard Lindstrom


In the past I built the libraries with MinGW, using some tricks to link against the same Microsoft C runtime library as the Python version.

On 14-12-18 06:04 AM, Paul Vincent Craven wrote:
I'm working on the script now to add 2.6, 3.2,  msi installers. I don't quiet understand the issue with Windows pre-built. I'll look at it more.

Paul Vincent Craven

On Dec 18, 2014, at 7:43 AM, Renà Dudfield <renesd@xxxxxxxxx> wrote:

Hi,

Another repository would be better for windows prebuilt? I have some prebuilt mac stuff I could add to a separate repo too. Although maybe I'll stick with source there though.

Paul.Craven should be able to do stuff with Pygame pypi now. Unfortunately it's 'Pygame' and not 'pygame', but I guess that doesn't matter too much for now.

best,