%20%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
ジョイスティック軸の値を読み取り、その値を Arduino に送信する Python コード (Raspbian OS で実行) があります。
コードの先頭に次のように入力しました:
import pygame
その後、get_axis() などの pygame 内で定義された関数を使用できます。これはすべて正常に動作します。
私の問題は、get_axis() 関数が Python シェルと 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
。これは Python パッケージなので、コンパイル/インストールは共通の./configure
、make
、make install
ルーチンでは行われません。コンパイル/インストールするには、以下を呼び出します。
python setup.py install
抽出された tar ファイルのベース ディレクトリ内。
コンパイルはいくつかのパッケージに依存しますが、残念ながら何をインストールする必要があるのか明確な概要はありません ( smpeg
、videodev.h
)。そのため、マシンがどの程度クリーンであるかに応じて、それをインストールするために多少の検索が必要になる場合があります。