`
tailorcai
  • 浏览: 93625 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

编译pygame的wince版本

阅读更多
预先准备的包参见前一篇文章。(包括需要copy的目录和文件)

1. 下载并编译SDL 1.2.13

2. 对Pygame的代码进行修改:去掉signal.h,long long.(去掉Longlong会对transform有影响,不过暂时用不到,不知道有没有更好的解决方案)

3. 将编译wince需要的文件copy到pygame/ce下

4. 修改SConstruct文件如下:
class CEBuildEnvironment(Environment):
	def __init__(self):
	    Environment.__init__(self, 	 
	        MSEVC_PLATFORM = 'POCKET PC 2003',
	        MSEVC_SUBPLATFORM = 'Win32 (WCE ARMV4)',
	        tools = ['mslink', 'msevc', 'zip'],
	        toolpath = '.'
	        )

class PythonCEBuildEnvironment(CEBuildEnvironment):
	def __init__(self):
	    CEBuildEnvironment.__init__(self)
	    self.Append(CPPDEFINES = ['WIN32'],
	                LIBS=["python25","SDL"],
	                CPPPATH=["include","../../SDL-1.2.13/include"],
	                LIBPATH=["lib","../../SDL-1.2.13/VisualCE/SDL/Pocket PC 2003 (ARMV4)/Debug"])

	def PythonExtension(self, target, sources, **kw):
	    self.SharedLibrary(target, sources, SHLIBSUFFIX='.pyd', **kw)

lines = """
base src/base.c $(SDL) $(DEBUG)
#cdrom src/cdrom.c $(SDL) $(DEBUG)
constants src/constants.c $(SDL) $(DEBUG)
display src/display.c $(SDL) $(DEBUG)
event src/event.c $(SDL) $(DEBUG)
fastevent src/fastevent.c src/fastevents.c $(SDL) $(DEBUG)
key src/key.c $(SDL) $(DEBUG)
mouse src/mouse.c $(SDL) $(DEBUG)
rect src/rect.c $(SDL) $(DEBUG)
rwobject src/rwobject.c $(SDL) $(DEBUG)
surface src/surface.c src/alphablit.c src/surface_fill.c $(SDL) $(DEBUG)
surflock src/surflock.c $(SDL) $(DEBUG)
time src/time.c $(SDL) $(DEBUG)
joystick src/joystick.c $(SDL) $(DEBUG)
draw src/draw.c $(SDL) $(DEBUG)
image src/image.c $(SDL) $(DEBUG)
overlay src/overlay.c $(SDL) $(DEBUG)
transform src/transform.c src/rotozoom.c src/scale2x.c $(SDL) $(DEBUG)
mask src/mask.c src/bitmask.c $(SDL) $(DEBUG)
bufferproxy src/bufferproxy.c $(SDL) $(DEBUG)
pixelarray src/pixelarray.c $(SDL) $(DEBUG)
"""
 
env = PythonCEBuildEnvironment()
for l in lines.splitlines():
    if l.startswith('#'): continue
    names = l.split(' ')
    fns = ['../' + x for x in names[1:-2]]
    env.PythonExtension("build/%s.pyd" % names[0], fns)


5. 执行scons.py

6. 将生成的pyd文件替换到windows版本的pygame中,然后去掉无用的.dll文件,将新的pygame复制到wince的python25/lib下,即可
  • ce-out.rar (688.9 KB)
  • 描述: 编译好的ce包,已经支持font模块了
  • 下载次数: 49
1
0
分享到:
评论

相关推荐

    编译pygame的font模块

    源码编译是开发者获取最新特性和修复bug的一种方式,它涉及下载pygame的源代码,配置编译环境,然后执行编译和安装步骤。首先,你需要确保已经安装了Python的开发工具,如Python头文件、C编译器(如GCC)和...

    pygame1.9.2版本64位windows

    pygame1.9.2版本64位windows

    这个是支持python3的64位的pygame的版本。有需要的可以下载.

    这个是支持python3的64位的pygame版本。有需要的可以下载.

    Python3.5安装包及Pygame模块

    但由于这里是Python3.5的安装包,可能需要找到对应版本的Pygame源码包,手动编译安装。 4. **游戏开发基础**: - 使用Pygame,游戏开发的基础包括窗口初始化、图像加载与显示、事件循环(处理键盘和鼠标输入)、...

    pygame1.9.3版本64位windows

    含有pygame-1.9.3-cp35-cp35m-win_amd64.whl、pygame-1.9.3-cp34-cp34m-win_amd64.whl、pygame-1.9.3-cp27-cp27m-win_amd64.whl、pygame-1.9.3-cp36-cp36m-win_amd64.whl这几个可在win64位下使用的pygame。

    Python_pygame版本飞机大战源码

    【Python Pygame版本飞机大战源码】是一款基于Python编程语言和Pygame库开发的游戏项目,适合初学者进行Python编程和游戏开发的学习与实践。Pygame是Python的一个模块,专门用于创建2D游戏,它提供了丰富的功能,如...

    pygame中文文档,

    7. pygame.get_sdl_version():获得 SDL 的版本号,返回 SDL 库的三个版本号,用于检测哪些功能可能无法通过 Pygame 获得。 8. pygame.get_sdl_byteorder():获取 SDL 的字节顺序,返回 SDL 库的字节顺序,用于检测...

    pygame-1.9.6-cp37-cp37m-win_amd64.zip

    这个资源是pygame库的1.9.6版本,专为Windows 64位操作系统(win_amd64)和Python 3.7编译版本(cp37)设计。在压缩包中,包含的唯一文件是`pygame-1.9.6-cp37-cp37m-win_amd64.whl`,这是一个预编译的Python Wheel...

    Python库 | pygame-1.9.6rc1-cp36-cp36m-manylinux1_i686.whl

    在Python环境中安装Pygame,通常通过pip命令完成,但提供的资源`pygame-1.9.6rc1-cp36-cp36m-manylinux1_i686.whl`是一个预编译的wheel文件,适用于Python 3.6版本且为32位系统的环境。安装方法如下: 1. 首先,...

    pygame 源码及安装包 1.9.1

    pygame 源码及安装包 1.9.1 for python 2.7 开发python游戏开源模块 Pygame is a set of Python modules designed for writing games. Pygame adds functionality on top of the excellent SDL library. This ...

    安装pygame与pip

    如果有问题,比如出现红色下划线,可能是因为 pygame 版本与 Python 版本不兼容或路径设置问题等。 #### 三、常见问题及解决方案 **问题1:导入pygame时报错** - 确认 pygame 版本与 Python 版本兼容。 - 检查...

    pygame的Whl包下载

    1. pygame-2.0.0-cp38-cp38-win32.whl:这个文件适用于Python 3.8版本,且是32位系统的。"cp38"代表Python 3.8,"cp38"后面的"8"表示主版本号,"cp38"前面的"3"表示次版本号。"win32"则表明它是为Windows 32位系统...

    Pygame教程(非常详细)

    Pygame教程(非常详细) Pygame是Python的一个游戏开发模块,主要用于开发2D电子游戏。它是一个免费、开源的软件包,支持多种操作系统,具有良好的跨平台性。Pygame提供了诸多操作模块,如图像模块、声音模块、输入...

    3D_pygame3D_Pygame_3d_

    在Python编程领域,Pygame是一个非常受欢迎的游戏开发库,它为开发者提供了丰富的功能来创建2D游戏。然而,Pygame并不直接支持3D图形,但通过一些技巧和扩展,我们可以利用Pygame构建简单的3D渲染引擎。这个项目,...

    python3.8.10-win32 | 对应版本pygame | 欧陆词典 | Thonny IDE | pygame安装教学

    Python 3.8.10-win32 是 Python 语言的一个特定版本,针对Windows 32位系统的。这个版本在2020年发布,它提供了稳定性和性能上的改进,同时也修复了一些已知的错误。Python 3.8 引入了新的语法特性,如赋值表达式...

Global site tag (gtag.js) - Google Analytics