%3F.png)
Tengo un código Python (que se ejecuta en un sistema operativo Raspbian) que lee el valor de un eje de joystick y luego envía el valor a un arduino.
Al comienzo del código he escrito:
import pygame
Luego puedo usar funciones definidas dentro de pygame, como get_axis(). Todo esto funciona bien.
Mi problema es que la función get_axis() imprime el valor en el shell de Python y en LXTerminal, que no es lo que quiero.
Todos los archivos de pygame se encuentran en la carpeta:
/usr/lib/pyshared/python2.6/pygame
Y sé que la función que quiero se encuentra dentro:
/usr/lib/pyshared/python2.6/pygame/joystick.so
Pero, ¿cómo abro y edito este archivo de objeto compartido?
Respuesta1
Normalmente no editas un archivo objeto compartido, lo compilas desde las fuentes después de editarlo.
Puededescargar las fuentes para pygame, las últimas fuentes publicadas sonhttp://pygame.org/ftp/pygame-1.9.1release.tar.gz.
Si lo descarga, las fuentes reales de joystick.so se encuentran en src/joystick.c
. La compilación/instalación no se realiza a través de las rutinas comunes , ./configure
ya que se trata de un paquete de Python. Para compilar/instalar usted llama:make
make install
python setup.py install
en el directorio base del archivo tar extraído.
La compilación depende de varios paquetes, desafortunadamente no hay una descripción clara de lo que se debe instalar ( smpeg
, videodev.h
), por lo que puede ser necesario realizar algunas búsquedas para instalarlo, dependiendo de qué tan limpia esté su máquina para empezar.