我有一个 python 代码(在 raspbian 操作系统上运行),它读取操纵杆轴的值,然后将该值发送到 arduino。
在代码的开头我输入了:
import pygame
然后我可以使用 pygame 中定义的函数,例如 get_axis()。这一切都很好。
我的问题是 get_axis() 函数在 python shell 和 LXTerminal 上打印值,这不是我想要的。
所有 pygame 文件都位于以下文件夹中:
/usr/lib/pyshared/python2.6/pygame
我知道我想要的功能位于内部:
/usr/lib/pyshared/python2.6/pygame/joystick.so
但是如何打开和编辑这个共享对象文件呢?
答案1
您通常不编辑共享目标文件,而是在编辑后从源代码编译它。
你可以下载 pygame 的源代码,最新发布的来源是http://pygame.org/ftp/pygame-1.9.1release.tar.gz。
如果您下载该文件,joystick.so 的实际来源位于 下src/joystick.c
。编译/安装不是通过 common ./configure
,make
和make install
例程完成的,因为这是一个 Python 包。为了编译/安装,您可以调用:
python setup.py install
在提取的 tar 文件的基目录中。
编译依赖于多个软件包,不幸的是,没有明确概述需要安装什么(smpeg
,videodev.h
),因此可能需要一些搜索才能安装它,具体取决于您的计算机开始时的清洁程度。