%20%C3%A4ndern%3F.png)
Ich habe einen Python-Code (läuft auf einem Raspbian-Betriebssystem), der den Wert einer Joystick-Achse liest und den Wert dann an einen Arduino sendet.
Am Anfang des Codes habe ich Folgendes eingegeben:
import pygame
Ich kann dann in pygame definierte Funktionen verwenden, wie z. B. get_axis(). Das funktioniert alles einwandfrei.
Mein Problem besteht darin, dass die Funktion get_axis() den Wert in der Python-Shell und im LXTerminal ausgibt, was ich nicht möchte.
Alle Pygame-Dateien befinden sich im Ordner:
/usr/lib/pyshared/python2.6/pygame
Und ich weiß, dass sich die gewünschte Funktion darin befindet:
/usr/lib/pyshared/python2.6/pygame/joystick.so
Aber wie öffne und bearbeite ich diese Shared Object-Datei?
Antwort1
Normalerweise bearbeiten Sie eine gemeinsam genutzte Objektdatei nicht, sondern kompilieren sie nach der Bearbeitung aus den Quellen.
Du kannstLaden Sie die Quellen für Pygame herunter, die neuesten veröffentlichten Quellen sindhttp://pygame.org/ftp/pygame-1.9.1release.tar.gz.
Wenn Sie das herunterladen, finden Sie die eigentlichen Quellen für joystick.so unter src/joystick.c
. Die Kompilierung/Installation erfolgt nicht über die üblichen ./configure
, make
und make install
-Routinen, da es sich um ein Python-Paket handelt. Zum Kompilieren/Installieren rufen Sie auf:
python setup.py install
im Basisverzeichnis der extrahierten TAR-Datei.
Die Kompilierung hängt von mehreren Paketen ab. Leider gibt es keine klare Übersicht darüber, was installiert werden muss ( smpeg
, videodev.h
), sodass je nachdem, wie sauber Ihr Rechner von Anfang an ist, möglicherweise etwas Sucharbeit erforderlich ist, um das zu installieren.