Как активировать модуль записи Xorg на Raspbian?

Я пытаюсь автоматизировать некоторые тесты на моем RaspberryPi, и я использую pymouse python для выполнения некоторых эмулируемых кликов. На моем 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 .

  • Имеет ли X11 жестко установленный предел для строк ресурсов приложения?
  • Отключить и включить чтение с последовательного порта сенсорного экрана
  • Есть ли программа, которая дает координаты экрана X текстового курсора (точка ввода)?
  • Как я могу попасть на терминал или виртуальную консоль, когда Ctrl-Alt-F2 выходит из строя?
  • Названия устройств недетерминированных графических карт
  • Xrandr debian черный экран при изменении разрешения
  • Как настроить GParted видео режим в Oracle Virtualbox?
  • Можно ли отключить нажатие на клик в конфигурации X-сервера без разделов «InputClass»?
  • 2 Solutions collect form web for “Как активировать модуль записи Xorg на Raspbian?”

    Вы можете протестировать это без остальной части pymouse, запуская python и запуская

     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 года, что также объясняет, почему попытка загрузить модуль не работает; с четырьмя года назад модуль не загружался.

    python-xlib получил поддержку в версии 0.14 в 2007 году, так что еще менее вероятно, что будет устаревшим …

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

    Это макрорекордер. Он скомпилирован, но я предполагаю, что он работает, как он говорит. Я не тестировал его, но это кажется намного проще, чем взломать программу python, и вы не можете понять, где она ломается.

    Linux и Unix - лучшая ОС в мире.