After emerging kiki I could not play, starting a new game did a segfault with this error: File "/usr/share/games/kiki//py/world.py", line 137, in create if type (world_dict) == types.StringType: NameError: name 'types' is not defined [ERROR] KikiPyAction::perform failed "kikipy action" Fatal signal: Segmentation Fault (SDL Parachute Deployed) free(): invalid pointer 0x84fd1e0! Reproducible: Always Steps to Reproduce: 1. Emerge kiki 2. Try a new game.
Created attachment 37247 [details, diff] the file world.py did not import types which is needed in the file, so it add it. I dont know a lot about python, but it seems to be related to a newer version of python which need to import types to use types.StringType as opposed to old versions.
kiki needs python 2.2 in order to work correctly. Is that what version of python you're using?
Any of the python group feel like taking a shot at making kiki work with python 2.3?
Created attachment 37783 [details] kiki-0.9.0.ebuild This ebuild will make it compile with 2.3. It says in the Readme it will work with Python 2.3*, but I don't have a 3D card in my machine to test it on at the moment.
Here's the traceback I get using that ebuild: Traceback (most recent call last): File "/usr/share/games/kiki//py/env.py", line 70, in ? execfile(kikipy_path + "world.py") File "/usr/share/games/kiki//py/world.py", line 4, in ? import random File "/usr/lib/python2.3/random.py", line 62, in ? import _random ImportError: /usr/lib/python2.3/lib-dynload/_random.so: undefined symbol: PyMem_Malloc
Created attachment 38391 [details, diff] Fix linking Rob Cakebreads ebuild just needs Kristian Benoits import fix + this little fix to make it link against the correct library to work with python-2.3. I haven't tested it against python-2.2 but the game works fine using 2.3 now. Adjusting the ebuild to include this patch is left as an exercise to the reader :)
Huge thanks to the python guys. kiki-0.9.0-r1.ebuild should be more fun with newer python.