openstenoproject/plover

Plover 4.0.0.dev12 AppImage xcb error does not resolve on Debian OS derivative

Closed this issue · 1 comments

Hi there,

I'm trying to get the latest release of Plover to work on PureOS 3.30.2, a Debian derivative. The last working version of Plover I used on this OS was plover-4.0.0.dev8.66.g685bd33-x86_64 (it is also no longer working. Both Georgi and TinyMod will output QUERTY but not steno).

When I attempt to run the AppImage, I get the error:

2022-09-11 11:23:40,485 [MainThread] ERROR: connection to existing instance failed, force cleaning before restart
2022-09-11 11:23:41,223 [MainThread] ERROR: Qt: This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: xcb.

fish: “./plover-4.0.0.dev12-x86_64.App…” terminated by signal SIGABRT (Abort)

I have very basic command line skills so I scrambled around making sure that QT5 was installed, then saw the instructions for the xcb error. As far as I (and my much-more-command-line-literate partner) can tell, the Debian equivalents of libxcb, xcb-util and qt5-qtstyleplugins are all installed, but are somehow not being recognized when the AppImage runs.

Finally we tried:

./plover.AppImage -s plover_plugins install -v 'PyQt5==5.14.2' 'PyQt5-sip==12.7.2'

...and got the following output:

Using pip 21.3.1 from /tmp/.mount_ploveracdAIg/usr/lib/python3.9/site-packages/pip (python 3.9)
Collecting PyQt5==5.14.2
  Using cached PyQt5-5.14.2-5.14.2-cp35.cp36.cp37.cp38-abi3-manylinux2014_x86_64.whl (63.6 MB)
Collecting PyQt5-sip==12.7.2
  Using cached PyQt5_sip-12.7.2.tar.gz (101 kB)
  Running command /tmp/.mount_ploveracdAIg/usr/bin/python /tmp/pip-standalone-pip-y00cbd0y/__env_pip__.zip/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-ok7ntyjx/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- 'setuptools >=30.3' wheel
  Collecting setuptools>=30.3
    Using cached setuptools-65.3.0-py3-none-any.whl (1.2 MB)
  Collecting wheel
    Using cached wheel-0.37.1-py2.py3-none-any.whl (35 kB)
  Installing collected packages: wheel, setuptools
  Successfully installed setuptools-65.3.0 wheel-0.37.1
  WARNING: You are using pip version 21.3.1; however, version 22.2.2 is available.
  You should consider upgrading via the '/tmp/.mount_ploveracdAIg/usr/bin/python -m pip install --upgrade pip' command.
  Installing build dependencies ... done
  Running command /tmp/.mount_ploveracdAIg/usr/bin/python /tmp/.mount_ploveracdAIg/usr/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py get_requires_for_build_wheel /tmp/tmpsp8vsyqo
  running egg_info
  writing PyQt5_sip.egg-info/PKG-INFO
  writing dependency_links to PyQt5_sip.egg-info/dependency_links.txt
  writing top-level names to PyQt5_sip.egg-info/top_level.txt
  reading manifest file 'PyQt5_sip.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  writing manifest file 'PyQt5_sip.egg-info/SOURCES.txt'
  Getting requirements to build wheel ... done
  Running command /tmp/.mount_ploveracdAIg/usr/bin/python /tmp/.mount_ploveracdAIg/usr/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py prepare_metadata_for_build_wheel /tmp/tmp0cmji377
  running dist_info
  creating /tmp/pip-modern-metadata-df60c0o0/PyQt5_sip.egg-info
  writing /tmp/pip-modern-metadata-df60c0o0/PyQt5_sip.egg-info/PKG-INFO
  writing dependency_links to /tmp/pip-modern-metadata-df60c0o0/PyQt5_sip.egg-info/dependency_links.txt
  writing top-level names to /tmp/pip-modern-metadata-df60c0o0/PyQt5_sip.egg-info/top_level.txt
  writing manifest file '/tmp/pip-modern-metadata-df60c0o0/PyQt5_sip.egg-info/SOURCES.txt'
  reading manifest file '/tmp/pip-modern-metadata-df60c0o0/PyQt5_sip.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  writing manifest file '/tmp/pip-modern-metadata-df60c0o0/PyQt5_sip.egg-info/SOURCES.txt'
  creating '/tmp/pip-modern-metadata-df60c0o0/PyQt5_sip-12.7.2.dist-info'
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: PyQt5-sip
  Running command /tmp/.mount_ploveracdAIg/usr/bin/python /tmp/.mount_ploveracdAIg/usr/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /tmp/tmpfnza8e3c
  running bdist_wheel
  running build
  running build_ext
  building 'PyQt5.sip' extension
  creating build
  creating build/temp.linux-x86_64-cpython-39
  gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/opt/hostedtoolcache/Python/3.9.13/x64/include/python3.9 -c apiversions.c -o build/temp.linux-x86_64-cpython-39/apiversions.o
  apiversions.c:20:10: fatal error: Python.h: No such file or directory
   #include <Python.h>
            ^~~~~~~~~~
  compilation terminated.
  error: command '/usr/bin/gcc' failed with exit code 1
  Building wheel for PyQt5-sip (pyproject.toml) ... error
  ERROR: Failed building wheel for PyQt5-sip
Failed to build PyQt5-sip
ERROR: Could not build wheels for PyQt5-sip, which is required to install pyproject.toml-based projects

Does anyone have any ideas? Thanks in advance!

Please try running with env QT_DEBUG_PLUGINS=1 plover.AppImage -l debug.