[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
RE: [pygame] `pygame`: on Ubuntu, using `pygame.image.save` to save PNG causes `pygame.error: SavePNG: could not create png write struct`
I think this message came to me by accident.
Mainframetech (Chris)
-----Original Message-----
From: owner-pygame-users@xxxxxxxx [mailto:owner-pygame-users@xxxxxxxx] On Behalf Of Lenard Lindstrom
Sent: Monday, November 30, 2015 1:50 AM
To: pygame-users@xxxxxxxx
Subject: Re: [pygame] `pygame`: on Ubuntu, using `pygame.image.save` to save PNG causes `pygame.error: SavePNG: could not create png write struct`
Hi,
On 15-11-29 12:25 PM, rockachu2@xxxxxxxxx wrote:
> A possible solution is to compile pygame yourself on that machine.
> See the website for details, but its not very involved on ubuntu.
>
>
I do most of my Pygame development on Ubuntu 14.04 (Linux Mint 17.1). Of course I build it myself, and have it passing all the tests. You will need the following development packages installed: libpython2.7-dev (or libpython3.4-dev), libsdl1.2-dev, libsdl-ttf2.0-dev, libsdl-image1.2-dev, libsdl-mixer1.2-dev, libfreetype6-dev, libpng12-dev, libjpeg8-dev, libportmidi-dev, and libX11-dev (for the scrap module).
Building and installing is as simple as downloading the source, then in the source directory doing
python config.py
python setup.py install --prefix=where-you-want-it-to-go
If you want the docs, you will also need to install the python-sphinx package and run
python makeref.py
before the "python setup.py ..."
>
> On Nov 29, 2015, at 11:38, Brian Merchant <bhmerchant@xxxxxxxxx
> <mailto:bhmerchant@xxxxxxxxx>> wrote:
>
>> Hi all,
>>
>> I am now on Ubuntu. I did not have this issue when running the same
>> script on Windows.
>>
>> Here's the error I am getting:
>>
>> File "/home/alien/cncell/core/animator.py", line 413, in
>> create_animation_from_data
>> pygame.image.save(screen, image_fp)
>> pygame.error: SavePNG: could not create png write struct
>>
>>
>> When `pygame.image.save` is first called, `libpng` produces the
>> following warning:
>>
>> > libpng warning: Application built with libpng-1.2.51 but running
>> with 1.6.17
>>
>>
>> Some things I have tried:
>>
>> 1) can I load PNGs? yes
>>
>> 2) results of `python -m pygame.tests`:
>>
>> ======================================================================
>> FAIL: BaseModuleTest.test_get_error
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>> File
>> "/home/brian/anaconda2/lib/python2.7/site-packages/pygame/tests/base_
>> test.py",
>> line 569, in test_get_error
>> e)
>> AssertionError: Failed to access the SoundFont
>> /usr/share/sounds/sf2/FluidR3_GM.sf2
>>
This is the installed SDL_mixer library complaining about missing FluidSynth sound patch files. It can be ignored.
>> ======================================================================
>> FAIL: BaseModuleTest.test_set_error
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>> File
>> "/home/brian/anaconda2/lib/python2.7/site-packages/pygame/tests/base_
>> test.py",
>> line 586, in test_set_error
>> e)
>> AssertionError: Failed to access the SoundFont
>> /usr/share/sounds/sf2/FluidR3_GM.sf2
>> ======================================================================
>> ERROR: GL_ImageSave.test_image_save_works_with_opengl_surfaces
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>> File
>> "/home/brian/anaconda2/lib/python2.7/site-packages/pygame/tests/image
>> __save_gl_surface_test.py", line 37, in
>> test_image_save_works_with_opengl_surfaces
>> pygame.image.save(screen, tmp_file)
>> error: SavePNG: could not create png write struct
>> ======================================================================
>> ERROR: ImageModuleTest.testSavePNG24
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>> File
>> "/home/brian/anaconda2/lib/python2.7/site-packages/pygame/tests/image
>> _test.py",
>> line 215, in testSavePNG24
>> pygame.image.save(surf, f_path)
>> error: SavePNG: could not create png write struct
>> ======================================================================
>> ERROR: ImageModuleTest.testSavePNG32
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>> File
>> "/home/brian/anaconda2/lib/python2.7/site-packages/pygame/tests/image
>> _test.py",
>> line 184, in testSavePNG32
>> pygame.image.save(surf, f_path)
>> error: SavePNG: could not create png write struct
>> ======================================================================
>> ERROR: ImageModuleTest.test_save
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>> File
>> "/home/brian/anaconda2/lib/python2.7/site-packages/pygame/tests/image
>> _test.py",
>> line 248, in test_save
>> pygame.image.save(s, temp_filename)
>> error: SavePNG: could not create png write struct
>> ======================================================================
>> ERROR: ImageModuleTest.test_save_colorkey
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>> File
>> "/home/brian/anaconda2/lib/python2.7/site-packages/pygame/tests/image
>> _test.py",
>> line 275, in test_save_colorkey
>> pygame.image.save(s, temp_filename)
>> error: SavePNG: could not create png write struct
>> ======================================================================
>> ERROR: ImageextModuleTest.test_save_unicode_path
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>> File
>> "/home/brian/anaconda2/lib/python2.7/site-packages/pygame/tests/image
>> ext_test.py",
>> line 65, in test_save_unicode_path
>> imageext.save_extended(im, temp_file)
>> error: SavePNG: could not create png write struct
>> ----------------------------------------------------------------------
>> Ran 708 tests in 28.894s
>> FAILED (failures=2, errors=6)
>>
>> The results of these tests makes me think that the issue is unlikely
>> to be due to issues specific to the porting of my code from Windows
>> to Ubuntu (so for instance, I have tried to fix pathnames, etc.
>> wherever possible, and the `pygame` tests should be platform
>> independent, but still fail?).
>>
>> What should I do to fix this issue?
>>
>> Kind regards,
>> Brian
>>
>>
Hope this is of some help,
Lenard Lindstrom