RaspbianでXorgロギングモジュールを有効にする方法は?

RaspbianでXorgロギングモジュールを有効にする方法は?

私はRaspberryPiでいくつかのテストを自動化し、Pythonのpymouseを使ってシミュレートされたクリックを実行したいと思います。私のDebianではうまくいきますが、Raspbianの場合はpymouseをインポートしようとすると、常に次のエラーメッセージで失敗します。

pi@pi ~/ $ python test.py
Traceback (most recent call last):
  File "test.py", line 2, in <module>
    from pymouse import PyMouse 
  File "/usr/local/lib/python2.7/dist-packages/pymouse/__init__.py", line 95, in <module>
    from unix import PyMouse, PyMouseEvent
  File "/usr/local/lib/python2.7/dist-packages/pymouse/unix.py", line 53, in <module>
    class PyMouseEvent(PyMouseEventMeta):
  File "/usr/local/lib/python2.7/dist-packages/pymouse/unix.py", line 54, in PyMouseEvent
    ctx = display2.record_create_context(
  File "/usr/lib/pymodules/python2.7/Xlib/display.py", line 216, in __getattr__
    raise AttributeError(attr)
AttributeError: record_create_context

そこで私はいくつかの調査を行った結果、x11のインストールでロギングモジュールが欠落して問題が発生する可能性があることを発見しました。デフォルトの/etc/X11/xorg.confを作成し、次の行を追加しました。

Section "Module"
    Load "record"
EndSection

再起動後、何の違いも見つかりません。まだこのモジュールがRaspbianにインストールされていないとしますか?どのようにインストールしますか?

修正する: 私が見つけた他の人、Fedoraで同様の問題が発生し、/usr/lib/xorg/modules/extensions/librecord.so自分の問題が欠落しているという事実を文書化しました。ファイルが存在するので、これは私の問題ではないようです。また、Xorg -configure新しいxorg.confを作成した後、Piを再起動してみました。まだ運がありません。 :-(

以下は、役立つ可能性がある追加情報です。

pi@pi ~/ $ grep LoadModule /var/log/Xorg.0.log
[169058.900] (II) LoadModule: "fbturbo"
[169058.912] (II) LoadModule: "fbdev"

そして:

pi@pi ~/ $ xdpyinfo name of display:    :0.0 version number:    11.0 vendor string:    AT&T Laboratories Cambridge vendor release number:   3332 [...] number of extensions:    7
    BIG-REQUESTS
    MIT-SHM
    MIT-SUNDRY-NONSTANDARD
    SHAPE
    SYNC
    XC-MISC
    XTEST [...]

この投稿は以下から移動されました。RaspberryPi.stackexchange.com

答え1

Pythonを起動して実行して、残りのpymouseなしでテストできます。

from Xlib.display import Display
display = Display()
display.record_create_context

どちらを印刷する必要がありますか?

<bound method Display.create_context of <Xlib.display.Display instance at ...>>

に該当するようです

$ xdpyinfo | grep -i record
    RECORD

number of extensions:全出力から)

後者が表示されない場合は、Xサーバーはそれをサポートしていません。2012年7月コアサーバー編入- これはまた、モジュールをロードしようとする試みが機能しない理由を説明します。約4年前からロードするモジュールはありませんでした。

python-xlibそれ自体はrecord2007年バージョン0.14でサポートされていたので、時代遅れになる可能性は少なくなります。

答え2

http://mirrordirector-mb.raspbian.org/raspbian/pool/main/x/xmacro/

これはマクロレコーダーです。コンパイルされますが、言った通りに動作すると思います。私はテストしていませんが、何が問題なのかわからないPythonプログラムでハッキングするよりはるかに簡単です。

関連情報