Installation, Dependencies and Compatibility¶
Dependencies¶
particles support¶
numpy www.numpy.org
audio and video support by pyglet and ffmpeg¶
for Windows and Mac the simplest is ‘python -m pip install pyglet-ffmpeg2’
- for Linux you should use your package manager to get ffmpeg, version 4.x is
the one tested with pyglet.
support for extra image file formats¶
python -m pip install pillow
if using pyglet < 1.5.9 then must be pillow<8
in windows, if using python > 3.9, pillow>8 and pyglet>=1.5.9 is needed
audio support by SDL¶
in Windows, pygame http://www.pygame.org
in unix-like OSes libraries sdl 1.2 and sdl-mixer 1.2; in debian/ubuntu their packages are libsdl1.2 and libsdl-mixer1.2
in Mac, there’s no confirmed info. Should be similar to unix.
What explicit dependencies are declared in the setup.py ? six and pyglet
Compatibility¶
Compatibility notes at the time of writing, November 2020
python : cocos needs python 3.6+ (2.7 and 3.3+ should still work but is unsupported)
pyglet : pyglet >= 1.4.10, < 2.0 (prefer 1.4.x, 1.5 is unstable)
Just for reference, pyglet 1.5.8, the last (atm) released pyglet works fine.
Installing¶
Have a modern setuptools or pip installed.
While:
python -m pip install cocos2d
works, you will miss the docs and code samples. Its is therefore recommended to
install six and pyglet, pay attention to the pyglet version, see above
- download cocos2d-0.6.9.zip (or cocos2d-0.6.9.tar.gz )
decompress to a convenient location, the top dir will be cocos2d-0.6.9
the html docs will be in cocos2d-0.6.9/doc/html
useful code samples will be in cocos2d-0.6.9/test, cocos2d-0.6.9/samples, cocos2d-0.6.9/utest
install by:
cd cocos2d-0.6.9 python -m pip install -e .or alternatively by pointing that directory from a .pth or PYTHONPATH
All of cocos should be usable now, with the possible exceptions
cocos particles
SDL audio backend
ffmpeg audio-video backend
If you want to add these, look at the dependencies section.
Using PYTHONPATH or .pth¶
It is safe to point a checkout of cocos from a .pth or PYTHONPATH
The same is valid for pyglet.