Kivy install on Ubuntu issue

386 views
Skip to first unread message

John Walsh

unread,
Jul 5, 2021, 8:24:49 PM7/5/21
to MPF Users
Hello all. I am having an issue installing MPF on Ubuntu. I believe I got python installed properly. When I attempt to install MPF from the downloaded folder, it seems to progress ok until it gets to the Kivy section. At that point it throws an error and I get a sea of red, which ends with "Error: no matching distribution found fo rkivy==1.11.1". What's odd is just before this line, there is one that states it could not find that version of Kivy from versions: etc, one of which is 1.11.1, so I'm not sure I understand what the problem is, though I will readily admit that I am a linux novice. I can paste the full error if it's needed. Can anyone provide insight? Thanks.

jabdoa

unread,
Jul 6, 2021, 1:53:02 AM7/6/21
to MPF Users
Please attach the full log. We test that install on our continious integration server for Ubuntu and Debian. Which Ubuntu version are you using? Are you using our installer?

Jan

John Walsh

unread,
Jul 6, 2021, 4:57:50 PM7/6/21
to MPF Users
I am using Ubuntu 20.04, and I am attempting to install MPF with the built in installer, as instructed on the MPF documentation.

john@john-NUC7i3BNK:~$ . ~/mpfenv/bin/activate
(mpfenv) john@john-NUC7i3BNK:~/Documents/mpf-debian-installer-0.54.x$ chmod +x install && sudo ./install
[sudo] password for john:
[MPF Installer] Install packages using apt-get
Get:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
Hit:2 http://us.archive.ubuntu.com/ubuntu focal InRelease                                                                             
Hit:3 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu focal InRelease                                                                  
Get:4 http://us.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
Get:5 http://us.archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB]
Get:6 http://security.ubuntu.com/ubuntu focal-security/main amd64 DEP-11 Metadata [24.5 kB]
Get:7 http://security.ubuntu.com/ubuntu focal-security/universe amd64 DEP-11 Metadata [58.1 kB]
Get:8 http://security.ubuntu.com/ubuntu focal-security/multiverse amd64 DEP-11 Metadata [2,468 B]
Get:9 http://us.archive.ubuntu.com/ubuntu focal-updates/main amd64 DEP-11 Metadata [283 kB]
Get:10 http://us.archive.ubuntu.com/ubuntu focal-updates/universe amd64 DEP-11 Metadata [329 kB]
Get:11 http://us.archive.ubuntu.com/ubuntu focal-updates/multiverse amd64 DEP-11 Metadata [2,468 B]
Get:12 http://us.archive.ubuntu.com/ubuntu focal-backports/universe amd64 DEP-11 Metadata [1,780 B]
Fetched 1,029 kB in 1s (904 kB/s)                                              
Reading package lists... Done
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libjpeg-dev is already the newest version (8c-2ubuntu8).
python3 is already the newest version (3.8.2-0ubuntu2).
build-essential is already the newest version (12.8ubuntu1.1).
libtiff5-dev is already the newest version (4.1.0+git191117-2ubuntu0.20.04.1).
zlib1g-dev is already the newest version (1:1.2.11.dfsg-2ubuntu1.2).
python3-pip is already the newest version (20.0.2-5ubuntu1.5).
The following packages were automatically installed and are no longer required:
  chromium-codecs-ffmpeg-extra gstreamer1.0-vaapi libva-wayland2
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 218 not upgraded.
[MPF Installer] Updating python environment via pip (step 1/3)
Requirement already satisfied: pip in /usr/local/lib/python3.8/dist-packages (21.1.3)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[MPF Installer] Updating python environment via pip (step 2/3)
Requirement already satisfied: setuptools in /usr/local/lib/python3.8/dist-packages (57.1.0)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[MPF Installer] Updating python environment via pip (step 3/3)
Requirement already satisfied: pillow in /usr/local/lib/python3.8/dist-packages (8.3.0)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[MPF-MC Installer] Install packages using apt-get
Hit:1 http://us.archive.ubuntu.com/ubuntu focal InRelease
Hit:2 http://security.ubuntu.com/ubuntu focal-security InRelease         
Hit:3 http://us.archive.ubuntu.com/ubuntu focal-updates InRelease        
Hit:4 http://us.archive.ubuntu.com/ubuntu focal-backports InRelease
Hit:5 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu focal InRelease
Reading package lists... Done
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libgstreamer1.0-dev is already the newest version (1.16.2-2).
libjpeg-dev is already the newest version (8c-2ubuntu8).
libmtdev-dev is already the newest version (1.1.5-1.1).
lsb-release is already the newest version (11.1.0ubuntu2).
gstreamer1.0-plugins-bad is already the newest version (1.16.2-2.1ubuntu1).
gstreamer1.0-plugins-ugly is already the newest version (1.16.2-2build1).
libsdl2-dev is already the newest version (2.0.10+dfsg1-3).
libsdl2-image-dev is already the newest version (2.0.5+dfsg1-2).
libsdl2-mixer-dev is already the newest version (2.0.4+dfsg1-2build1).
libsdl2-ttf-dev is already the newest version (2.0.15+dfsg1-1).
libsmpeg-dev is already the newest version (0.4.5+cvs20030824-8build1).
libxine2-ffmpeg is already the newest version (1.2.9-1build5).
build-essential is already the newest version (12.8ubuntu1.1).
git is already the newest version (1:2.25.1-1ubuntu3.1).
gstreamer1.0-plugins-base is already the newest version (1.16.2-4ubuntu0.1).
libgl1-mesa-dev is already the newest version (20.2.6-0ubuntu0.20.04.1).
libgles2-mesa-dev is already the newest version (20.2.6-0ubuntu0.20.04.1).
libtiff5-dev is already the newest version (4.1.0+git191117-2ubuntu0.20.04.1).
libx11-dev is already the newest version (2:1.6.9-2ubuntu1.2).
pulseaudio is already the newest version (1:13.99.1-1ubuntu3.11).
libavcodec-dev is already the newest version (7:4.2.4-1ubuntu0.1).
libavformat-dev is already the newest version (7:4.2.4-1ubuntu0.1).
libswscale-dev is already the newest version (7:4.2.4-1ubuntu0.1).
The following packages were automatically installed and are no longer required:
  chromium-codecs-ffmpeg-extra gstreamer1.0-vaapi libva-wayland2
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 218 not upgraded.
[MPF-MC Installer] Install Cython in the correct version for kivy.
Requirement already satisfied: Cython==0.29.21 in /usr/local/lib/python3.8/dist-packages (0.29.21)
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[MPF-MC Installer] Installing kivy stable
Collecting kivy==1.11.1
  Using cached Kivy-1.11.1.tar.gz (23.6 MB)
    ERROR: Command errored out with exit status 1:
     command: /usr/bin/python3 -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-83f4a4vd/kivy_15c8011ebe054800b7d4c8e890b78612/setup.py'"'"'; __file__='"'"'/tmp/pip-install-83f4a4vd/kivy_15c8011ebe054800b7d4c8e890b78612/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-747giimp
         cwd: /tmp/pip-install-83f4a4vd/kivy_15c8011ebe054800b7d4c8e890b78612/
    Complete output (670 lines):
    fatal: not a git repository (or any of the parent directories): .git
    WARNING: Skipping page https://github.com/kivy-garden/garden/archive/master.zip because the HEAD request got Content-Type: application/zip.The only supported Content-Type is text/html
      ERROR: Command errored out with exit status 1:
       command: /usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/setup.py'"'"'; __file__='"'"'/tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-8_3fr__h
           cwd: /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/
      Complete output (598 lines):
      Unable to find pgen, not compiling formal grammar.
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-3.8
      copying cython.py -> build/lib.linux-x86_64-3.8
      creating build/lib.linux-x86_64-3.8/Cython
      copying Cython/Shadow.py -> build/lib.linux-x86_64-3.8/Cython
      copying Cython/Utils.py -> build/lib.linux-x86_64-3.8/Cython
      copying Cython/Coverage.py -> build/lib.linux-x86_64-3.8/Cython
      copying Cython/__init__.py -> build/lib.linux-x86_64-3.8/Cython
      copying Cython/CodeWriter.py -> build/lib.linux-x86_64-3.8/Cython
      copying Cython/Debugging.py -> build/lib.linux-x86_64-3.8/Cython
      copying Cython/TestUtils.py -> build/lib.linux-x86_64-3.8/Cython
      copying Cython/StringIOTree.py -> build/lib.linux-x86_64-3.8/Cython
      creating build/lib.linux-x86_64-3.8/Cython/Build
      copying Cython/Build/Inline.py -> build/lib.linux-x86_64-3.8/Cython/Build
      copying Cython/Build/Dependencies.py -> build/lib.linux-x86_64-3.8/Cython/Build
      copying Cython/Build/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Build
      copying Cython/Build/BuildExecutable.py -> build/lib.linux-x86_64-3.8/Cython/Build
      copying Cython/Build/Cythonize.py -> build/lib.linux-x86_64-3.8/Cython/Build
      copying Cython/Build/Distutils.py -> build/lib.linux-x86_64-3.8/Cython/Build
      copying Cython/Build/IpythonMagic.py -> build/lib.linux-x86_64-3.8/Cython/Build
      creating build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Pipeline.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Symtab.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Lexicon.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/ModuleNode.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Pythran.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Options.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Builtin.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Scanning.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/TypeSlots.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Nodes.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/TreeFragment.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/ExprNodes.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Naming.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/FusedNode.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Main.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Parsing.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/FlowControl.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/UtilNodes.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Future.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Interpreter.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Code.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Annotate.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Buffer.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Optimize.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/CodeGeneration.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/StringEncoding.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/ParseTreeTransforms.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Visitor.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/PyrexTypes.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Version.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Errors.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/MemoryView.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/AutoDocTransforms.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/TreePath.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/UtilityCode.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/CmdLine.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/CythonScope.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/AnalysedTreeTransforms.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/DebugFlags.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/TypeInference.py -> build/lib.linux-x86_64-3.8/Cython/Compiler
      creating build/lib.linux-x86_64-3.8/Cython/Runtime
      copying Cython/Runtime/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Runtime
      creating build/lib.linux-x86_64-3.8/Cython/Distutils
      copying Cython/Distutils/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Distutils
      copying Cython/Distutils/build_ext.py -> build/lib.linux-x86_64-3.8/Cython/Distutils
      copying Cython/Distutils/extension.py -> build/lib.linux-x86_64-3.8/Cython/Distutils
      copying Cython/Distutils/old_build_ext.py -> build/lib.linux-x86_64-3.8/Cython/Distutils
      creating build/lib.linux-x86_64-3.8/Cython/Debugger
      copying Cython/Debugger/Cygdb.py -> build/lib.linux-x86_64-3.8/Cython/Debugger
      copying Cython/Debugger/libpython.py -> build/lib.linux-x86_64-3.8/Cython/Debugger
      copying Cython/Debugger/libcython.py -> build/lib.linux-x86_64-3.8/Cython/Debugger
      copying Cython/Debugger/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Debugger
      copying Cython/Debugger/DebugWriter.py -> build/lib.linux-x86_64-3.8/Cython/Debugger
      creating build/lib.linux-x86_64-3.8/Cython/Debugger/Tests
      copying Cython/Debugger/Tests/TestLibCython.py -> build/lib.linux-x86_64-3.8/Cython/Debugger/Tests
      copying Cython/Debugger/Tests/test_libcython_in_gdb.py -> build/lib.linux-x86_64-3.8/Cython/Debugger/Tests
      copying Cython/Debugger/Tests/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Debugger/Tests
      copying Cython/Debugger/Tests/test_libpython_in_gdb.py -> build/lib.linux-x86_64-3.8/Cython/Debugger/Tests
      creating build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/Scanners.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/Lexicons.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/Transitions.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/Machines.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/DFA.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/Errors.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/Traditional.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/Regexps.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/Timing.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/Actions.py -> build/lib.linux-x86_64-3.8/Cython/Plex
      creating build/lib.linux-x86_64-3.8/Cython/Tests
      copying Cython/Tests/TestCythonUtils.py -> build/lib.linux-x86_64-3.8/Cython/Tests
      copying Cython/Tests/TestStringIOTree.py -> build/lib.linux-x86_64-3.8/Cython/Tests
      copying Cython/Tests/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Tests
      copying Cython/Tests/xmlrunner.py -> build/lib.linux-x86_64-3.8/Cython/Tests
      copying Cython/Tests/TestJediTyper.py -> build/lib.linux-x86_64-3.8/Cython/Tests
      copying Cython/Tests/TestCodeWriter.py -> build/lib.linux-x86_64-3.8/Cython/Tests
      creating build/lib.linux-x86_64-3.8/Cython/Build/Tests
      copying Cython/Build/Tests/TestInline.py -> build/lib.linux-x86_64-3.8/Cython/Build/Tests
      copying Cython/Build/Tests/TestCyCache.py -> build/lib.linux-x86_64-3.8/Cython/Build/Tests
      copying Cython/Build/Tests/TestStripLiterals.py -> build/lib.linux-x86_64-3.8/Cython/Build/Tests
      copying Cython/Build/Tests/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Build/Tests
      copying Cython/Build/Tests/TestIpythonMagic.py -> build/lib.linux-x86_64-3.8/Cython/Build/Tests
      creating build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestCmdLine.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestTreeFragment.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestFlowControl.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestParseTreeTransforms.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestMemView.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestTypes.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestSignatureMatching.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestUtilityLoad.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestGrammar.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestTreePath.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestBuffer.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      copying Cython/Compiler/Tests/TestVisitor.py -> build/lib.linux-x86_64-3.8/Cython/Compiler/Tests
      creating build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Utility
      creating build/lib.linux-x86_64-3.8/Cython/Tempita
      copying Cython/Tempita/compat3.py -> build/lib.linux-x86_64-3.8/Cython/Tempita
      copying Cython/Tempita/__init__.py -> build/lib.linux-x86_64-3.8/Cython/Tempita
      copying Cython/Tempita/_looper.py -> build/lib.linux-x86_64-3.8/Cython/Tempita
      copying Cython/Tempita/_tempita.py -> build/lib.linux-x86_64-3.8/Cython/Tempita
      creating build/lib.linux-x86_64-3.8/pyximport
      copying pyximport/pyximport.py -> build/lib.linux-x86_64-3.8/pyximport
      copying pyximport/__init__.py -> build/lib.linux-x86_64-3.8/pyximport
      copying pyximport/pyxbuild.py -> build/lib.linux-x86_64-3.8/pyximport
      creating build/lib.linux-x86_64-3.8/Cython/Includes
      copying Cython/Includes/openmp.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes
      creating build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/setjmp.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/time.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/float.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/stdint.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/errno.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/stdio.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/locale.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/math.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/limits.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/stdlib.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/string.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/stddef.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/__init__.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      copying Cython/Includes/libc/signal.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libc
      creating build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/cast.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/utility.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/map.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/typeinfo.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/unordered_map.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/complex.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/vector.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/pair.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/unordered_set.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/queue.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/memory.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/algorithm.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/limits.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/list.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/set.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/string.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/functional.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/forward_list.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/iterator.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/typeindex.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/deque.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/stack.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      copying Cython/Includes/libcpp/__init__.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/libcpp
      creating build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/module.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/type.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/buffer.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/long.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/float.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/complex.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/pycapsule.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/instance.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/pylifecycle.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/mapping.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/bytes.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/method.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/bool.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/dict.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/weakref.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/exc.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/unicode.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/pythread.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/object.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/datetime.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/int.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/array.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/slice.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/ref.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/getargs.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/cobject.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/longintrepr.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/mem.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/sequence.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/bytearray.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/list.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/tuple.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/set.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/ceval.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/string.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/function.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/iterator.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/pystate.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/version.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/number.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/__init__.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      copying Cython/Includes/cpython/oldbuffer.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/cpython
      creating build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_iterator.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_unicode.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_object.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_string.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_list.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_pycapsule.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_tuple.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_mem.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/stl.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_function.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_dict.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_ref.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_set.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_int.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/stdio.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_weakref.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_cobject.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_version.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_mapping.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_number.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/stdlib.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_long.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_type.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_buffer.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_method.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_bytes.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_bool.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_oldbuffer.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_module.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_instance.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_exc.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_complex.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_getargs.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_float.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      copying Cython/Includes/Deprecated/python_sequence.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/Deprecated
      creating build/lib.linux-x86_64-3.8/Cython/Includes/numpy
      copying Cython/Includes/numpy/math.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/numpy
      copying Cython/Includes/numpy/__init__.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/numpy
      creating build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/select.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/dlfcn.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/time.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/types.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/stat.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/ioctl.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/unistd.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/resource.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/wait.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/stdio.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/mman.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/stdlib.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/fcntl.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/strings.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/__init__.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Includes/posix/signal.pxd -> build/lib.linux-x86_64-3.8/Cython/Includes/posix
      copying Cython/Compiler/ParseTreeTransforms.pxd -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Visitor.pxd -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Code.pxd -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Parsing.pxd -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/Scanning.pxd -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Compiler/FlowControl.pxd -> build/lib.linux-x86_64-3.8/Cython/Compiler
      copying Cython/Runtime/refnanny.pyx -> build/lib.linux-x86_64-3.8/Cython/Runtime
      copying Cython/Debugger/Tests/codefile -> build/lib.linux-x86_64-3.8/Cython/Debugger/Tests
      copying Cython/Debugger/Tests/cfuncs.c -> build/lib.linux-x86_64-3.8/Cython/Debugger/Tests
      copying Cython/Plex/Actions.pxd -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Plex/Scanners.pxd -> build/lib.linux-x86_64-3.8/Cython/Plex
      copying Cython/Utility/CConvert.pyx -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/CpdefEnums.pyx -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/CppConvert.pyx -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/MemoryView.pyx -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/TestCythonScope.pyx -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/TestCyUtilityLoader.pyx -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Profile.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Printing.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Builtins.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/CMath.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Exceptions.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/StringTools.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/ExtensionTypes.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Complex.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/CommonStructures.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/MemoryView_C.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/ImportExport.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Buffer.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/TypeConversion.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Coroutine.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/AsyncGen.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/CythonFunction.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/TestUtilityLoader.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Capsule.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/ModuleSetupCode.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Embed.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Overflow.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/FunctionArguments.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/ObjectHandling.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/Optimize.c -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/arrayarray.h -> build/lib.linux-x86_64-3.8/Cython/Utility
      copying Cython/Utility/CppSupport.cpp -> build/lib.linux-x86_64-3.8/Cython/Utility
      running build_ext
      building 'Cython.Plex.Scanners' extension
      creating build/temp.linux-x86_64-3.8
      creating build/temp.linux-x86_64-3.8/tmp
      creating build/temp.linux-x86_64-3.8/tmp/pip-wheel-6kugd8ie
      creating build/temp.linux-x86_64-3.8/tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139
      creating build/temp.linux-x86_64-3.8/tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython
      creating build/temp.linux-x86_64-3.8/tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex
      x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.8 -c /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c -o build/temp.linux-x86_64-3.8/tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.o
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c: In function ‘__Pyx_InitCachedConstants’:
      /usr/include/python3.8/code.h:72:25: warning: passing argument 6 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
         72 | #define CO_OPTIMIZED    0x0001
            |                         ^
            |                         |
            |                         int
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:37: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                     ^
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7241:62: note: in expansion of macro ‘CO_OPTIMIZED’
       7241 |   __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__5, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_read, 113, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 113, __pyx_L1_error)
            |                                                              ^~~~~~~~~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7241:236: warning: passing argument 14 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       7241 |   __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__5, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_read, 113, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 113, __pyx_L1_error)
            |                                                                                                                                                                                                                                            ^~~~~~~~~~~~~~
            |                                                                                                                                                                                                                                            |
            |                                                                                                                                                                                                                                            PyObject * {aka struct _object *}
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:69: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                                                     ^~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7241:252: warning: passing argument 15 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
       7241 |   __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__5, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_read, 113, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 113, __pyx_L1_error)
            |                                                                                                                                                                                                                                                            ^~~
            |                                                                                                                                                                                                                                                            |
            |                                                                                                                                                                                                                                                            int
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:75: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                                                           ^~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:11: error: too many arguments to function ‘PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |           ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7241:33: note: in expansion of macro ‘__Pyx_PyCode_New’
       7241 |   __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__5, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_read, 113, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 113, __pyx_L1_error)
            |                                 ^~~~~~~~~~~~~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: declared here
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /usr/include/python3.8/code.h:72:25: warning: passing argument 6 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
         72 | #define CO_OPTIMIZED    0x0001
            |                         ^
            |                         |
            |                         int
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:37: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                     ^
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7253:62: note: in expansion of macro ‘CO_OPTIMIZED’
       7253 |   __pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_position, 297, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) __PYX_ERR(0, 297, __pyx_L1_error)
            |                                                              ^~~~~~~~~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7253:236: warning: passing argument 14 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       7253 |   __pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_position, 297, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) __PYX_ERR(0, 297, __pyx_L1_error)
            |                                                                                                                                                                                                                                            ^~~~~~~~~~~~~~~~~~
            |                                                                                                                                                                                                                                            |
            |                                                                                                                                                                                                                                            PyObject * {aka struct _object *}
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:69: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                                                     ^~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7253:256: warning: passing argument 15 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
       7253 |   __pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_position, 297, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) __PYX_ERR(0, 297, __pyx_L1_error)
            |                                                                                                                                                                                                                                                                ^~~
            |                                                                                                                                                                                                                                                                |
            |                                                                                                                                                                                                                                                                int
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:75: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                                                           ^~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:11: error: too many arguments to function ‘PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |           ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7253:33: note: in expansion of macro ‘__Pyx_PyCode_New’
       7253 |   __pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__7, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_position, 297, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) __PYX_ERR(0, 297, __pyx_L1_error)
            |                                 ^~~~~~~~~~~~~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: declared here
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /usr/include/python3.8/code.h:72:25: warning: passing argument 6 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
         72 | #define CO_OPTIMIZED    0x0001
            |                         ^
            |                         |
            |                         int
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:37: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                     ^
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7265:63: note: in expansion of macro ‘CO_OPTIMIZED’
       7265 |   __pyx_codeobj__10 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_get_position, 308, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__10)) __PYX_ERR(0, 308, __pyx_L1_error)
            |                                                               ^~~~~~~~~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7265:237: warning: passing argument 14 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       7265 |   __pyx_codeobj__10 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_get_position, 308, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__10)) __PYX_ERR(0, 308, __pyx_L1_error)
            |                                                                                                                                                                                                                                             ^~~~~~~~~~~~~~~~~~~~~~
            |                                                                                                                                                                                                                                             |
            |                                                                                                                                                                                                                                             PyObject * {aka struct _object *}
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:69: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                                                     ^~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7265:261: warning: passing argument 15 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
       7265 |   __pyx_codeobj__10 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_get_position, 308, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__10)) __PYX_ERR(0, 308, __pyx_L1_error)
            |                                                                                                                                                                                                                                                                     ^~~
            |                                                                                                                                                                                                                                                                     |
            |                                                                                                                                                                                                                                                                     int
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:75: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                                                           ^~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:11: error: too many arguments to function ‘PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |           ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7265:34: note: in expansion of macro ‘__Pyx_PyCode_New’
       7265 |   __pyx_codeobj__10 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__9, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_get_position, 308, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__10)) __PYX_ERR(0, 308, __pyx_L1_error)
            |                                  ^~~~~~~~~~~~~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: declared here
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /usr/include/python3.8/code.h:72:25: warning: passing argument 6 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
         72 | #define CO_OPTIMIZED    0x0001
            |                         ^
            |                         |
            |                         int
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:37: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                     ^
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7277:63: note: in expansion of macro ‘CO_OPTIMIZED’
       7277 |   __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_eof, 334, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 334, __pyx_L1_error)
            |                                                               ^~~~~~~~~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7277:238: warning: passing argument 14 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
       7277 |   __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_eof, 334, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 334, __pyx_L1_error)
            |                                                                                                                                                                                                                                              ^~~~~~~~~~~~~
            |                                                                                                                                                                                                                                              |
            |                                                                                                                                                                                                                                              PyObject * {aka struct _object *}
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:69: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                                                     ^~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7277:253: warning: passing argument 15 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
       7277 |   __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_eof, 334, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 334, __pyx_L1_error)
            |                                                                                                                                                                                                                                                             ^~~
            |                                                                                                                                                                                                                                                             |
            |                                                                                                                                                                                                                                                             int
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:75: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                                                           ^~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:11: error: too many arguments to function ‘PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |           ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:7277:34: note: in expansion of macro ‘__Pyx_PyCode_New’
       7277 |   __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_Cython_Plex_Scanners_py, __pyx_n_s_eof, 334, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 334, __pyx_L1_error)
            |                                  ^~~~~~~~~~~~~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: declared here
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c: In function ‘__Pyx_CreateCodeObjectForTraceback’:
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:10051:9: warning: passing argument 14 of ‘PyCode_New’ makes integer from pointer without a cast [-Wint-conversion]
      10051 |         py_funcname,  /*PyObject *name,*/
            |         ^~~~~~~~~~~
            |         |
            |         PyObject * {aka struct _object *}
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:69: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                                                     ^~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘int’ but argument is of type ‘PyObject *’ {aka ‘struct _object *’}
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:10052:9: warning: passing argument 15 of ‘PyCode_New’ makes pointer from integer without a cast [-Wint-conversion]
      10052 |         py_line,
            |         ^~~~~~~
            |         |
            |         int
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:75: note: in definition of macro ‘__Pyx_PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |                                                                           ^~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: expected ‘PyObject *’ {aka ‘struct _object *’} but argument is of type ‘int’
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:333:11: error: too many arguments to function ‘PyCode_New’
        333 |           PyCode_New(a, 0, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
            |           ^~~~~~~~~~
      /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:10038:15: note: in expansion of macro ‘__Pyx_PyCode_New’
      10038 |     py_code = __Pyx_PyCode_New(
            |               ^~~~~~~~~~~~~~~~
      In file included from /usr/include/python3.8/compile.h:5,
                       from /usr/include/python3.8/Python.h:138,
                       from /tmp/pip-wheel-6kugd8ie/cython_60f76320636044cb98e90b944e1eb139/Cython/Plex/Scanners.c:19:
      /usr/include/python3.8/code.h:122:28: note: declared here
        122 | PyAPI_FUNC(PyCodeObject *) PyCode_New(
            |                            ^~~~~~~~~~
      error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
      ----------------------------------------
      ERROR: Failed building wheel for cython
    ERROR: Failed to build one or more wheels
     Traceback (most recent call last):
       File "/usr/local/lib/python3.8/dist-packages/setuptools/installer.py", line 75, in fetch_build_egg
         subprocess.check_call(cmd)
       File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
         raise CalledProcessError(retcode, cmd)
     subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/tmp/tmpyn3cw5lv', '--quiet', '--find-links', 'https://github.com/kivy-garden/garden/archive/master.zip', 'cython!=0.27,!=0.27.2,<=0.29.10,>=0.24']' returned non-zero exit status 1.
    
     The above exception was the direct cause of the following exception:
    
     Traceback (most recent call last):
       File "<string>", line 1, in <module>
       File "/tmp/pip-install-83f4a4vd/kivy_15c8011ebe054800b7d4c8e890b78612/setup.py", line 1073, in <module>
         setup(
       File "/usr/local/lib/python3.8/dist-packages/setuptools/__init__.py", line 152, in setup
         _install_setup_requires(attrs)
       File "/usr/local/lib/python3.8/dist-packages/setuptools/__init__.py", line 147, in _install_setup_requires
         dist.fetch_build_eggs(dist.setup_requires)
       File "/usr/local/lib/python3.8/dist-packages/setuptools/dist.py", line 785, in fetch_build_eggs
         resolved_dists = pkg_resources.working_set.resolve(
       File "/usr/local/lib/python3.8/dist-packages/pkg_resources/__init__.py", line 766, in resolve
         dist = best[req.key] = env.best_match(
       File "/usr/local/lib/python3.8/dist-packages/pkg_resources/__init__.py", line 1051, in best_match
         return self.obtain(req, installer)
       File "/usr/local/lib/python3.8/dist-packages/pkg_resources/__init__.py", line 1063, in obtain
         return installer(requirement)
       File "/usr/local/lib/python3.8/dist-packages/setuptools/dist.py", line 844, in fetch_build_egg
         return fetch_build_egg(self, req)
       File "/usr/local/lib/python3.8/dist-packages/setuptools/installer.py", line 77, in fetch_build_egg
         raise DistutilsError(str(e)) from e
     distutils.errors.DistutilsError: Command '['/usr/bin/python3', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/tmp/tmpyn3cw5lv', '--quiet', '--find-links', 'https://github.com/kivy-garden/garden/archive/master.zip', 'cython!=0.27,!=0.27.2,<=0.29.10,>=0.24']' returned non-zero exit status 1.
    Using setuptools
    Using this graphics system: OpenGL
    GStreamer found via pkg-config
    SDL2 found via pkg-config
    SDL2: found SDL header at /usr/include/SDL2/SDL.h
    SDL2: found SDL_mixer header at /usr/include/SDL2/SDL_mixer.h
    SDL2: found SDL_ttf header at /usr/include/SDL2/SDL_ttf.h
    SDL2: found SDL_image header at /usr/include/SDL2/SDL_image.h
    WARNING: A problem occurred while running pkg-config --libs --cflags pangoft2 (code 1)
    
    b"Package pangoft2 was not found in the pkg-config search path.\nPerhaps you should add the directory containing `pangoft2.pc'\nto the PKG_CONFIG_PATH environment variable\nNo package 'pangoft2' found\n"
    
    ERROR: Dependency for context.pyx not resolved: config.pxi
    ERROR: Dependency for compiler.pyx not resolved: config.pxi
    ERROR: Dependency for context_instructions.pyx not resolved: config.pxi
    ERROR: Dependency for fbo.pyx not resolved: config.pxi
    ERROR: Dependency for gl_instructions.pyx not resolved: config.pxi
    ERROR: Dependency for instructions.pyx not resolved: config.pxi
    ERROR: Dependency for opengl.pyx not resolved: config.pxi
    ERROR: Dependency for opengl_utils.pyx not resolved: config.pxi
    ERROR: Dependency for shader.pyx not resolved: config.pxi
    ERROR: Dependency for stencil_instructions.pyx not resolved: config.pxi
    ERROR: Dependency for scissor_instructions.pyx not resolved: config.pxi
    ERROR: Dependency for texture.pyx not resolved: config.pxi
    ERROR: Dependency for vbo.pyx not resolved: config.pxi
    ERROR: Dependency for vertex.pyx not resolved: config.pxi
    ERROR: Dependency for vertex_instructions.pyx not resolved: config.pxi
    ERROR: Dependency for cgl.pyx not resolved: config.pxi
    ERROR: Dependency for cgl_mock.pyx not resolved: config.pxi
    ERROR: Dependency for cgl_gl.pyx not resolved: config.pxi
    ERROR: Dependency for cgl_glew.pyx not resolved: config.pxi
    ERROR: Dependency for cgl_sdl2.pyx not resolved: config.pxi
    ERROR: Dependency for svg.pyx not resolved: config.pxi
    ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/1b/4d/3f8a720f561dc1eabe036c0d87c6ce9d02823275391265538e606f45e37a/Kivy-1.11.1.tar.gz#sha256=4d0e596f74271e901b551f77661dde238df4765484fce9f5d1c72e8022984e84 (from https://pypi.org/simple/kivy/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
ERROR: Could not find a version that satisfies the requirement kivy==1.11.1 (from versions: 1.0.1a0, 1.0.2a0, 1.0.3a0, 1.0.4b0, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9, 1.1.0, 1.1.1, 1.2.0, 1.3.0, 1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.6.0, 1.7.0, 1.7.1, 1.7.2, 1.8.0, 1.9.0, 1.9.1, 1.10.0, 1.10.1, 1.11.0rc1, 1.11.0rc2, 1.11.0, 1.11.1, 2.0.0rc1, 2.0.0rc2, 2.0.0rc3, 2.0.0rc4, 2.0.0)
ERROR: No matching distribution found for kivy==1.11.1

John Walsh

unread,
Jul 12, 2021, 9:35:46 PM7/12/21
to MPF Users
Any ideas? I tried installing Kivy 2.0 to see if it would get around the requirement, but MPF still tries to install 1.11.1

Cédric MARTIN

unread,
Jul 13, 2021, 1:16:29 AM7/13/21
to mpf-...@googlegroups.com
Hello.
Archlinuw here I have managed to get mpg and mpf-mc run on python 3.9 and Kivy 2.
Python 3.9 came préinstallés.
Installed Kivy manually to the latest version and tested it before installing mpg.
The I cloned both mod and mpf-mc from GitHub.
In mpf (core/machine.py) I added 9 to the array of minor versions in the version check
And in mpf-mc(setup.py) I removed the ==1.11 from the dependency requirements
Finally I installed the two packages with pip (pip3 install -e . In each repository folder).

Since I am on Archlinuw I had to install all other dependencies manually (gstereamer, ffmpeg etc...) but that's another story.

Nice fact, I achieved ~10sec boot (and still have room for improvement)






--
You received this message because you are subscribed to the Google Groups "MPF Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mpf-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mpf-users/1a4f3ef1-38c4-405f-a0df-40b3224f3fa6n%40googlegroups.com.

jabdoa

unread,
Jul 13, 2021, 5:13:35 AM7/13/21
to MPF Users
MPF dev/0.55 works on python 3.8/9 and uses kivy 2.0. MPF 0.54 still needs older python versions as described in the installer due to kivy 1.11.


Jan

John Walsh

unread,
Jul 19, 2021, 7:30:28 PM7/19/21
to MPF Users
I tried installing the dev build instead and it still tried to install Kivy 1.11.1... although as I installed Kivy 2.0 manually before the MPF install, it seemed to install MPF properly. Now when I attempt to run the demo_man example machine to test the install, I get the following error:

john@john-NUC7i3BNK:~/Documents/mpf-examples-dev/demo_man$ mpf both -X

Traceback (most recent call last):
  File "/usr/local/bin/mpf", line 8, in <module>
    sys.exit(run_from_command_line())
  File "/usr/local/lib/python3.8/dist-packages/mpf/commands/__init__.py", line 176, in run_from_command_line
    CommandLineUtility(path).execute()
  File "/usr/local/lib/python3.8/dist-packages/mpf/commands/__init__.py", line 164, in execute
    _module.Command(self.mpf_path, machine_path, remaining_args)
  File "/usr/local/lib/python3.8/dist-packages/mpf/commands/both.py", line 27, in __init__
    _start_mpf(mpf_path, machine_path, args)
  File "/usr/local/lib/python3.8/dist-packages/mpf/commands/both.py", line 8, in _start_mpf
    module = import_module('mpf.commands.game')
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 848, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/usr/local/lib/python3.8/dist-packages/mpf/commands/game.py", line 16, in <module>
    from mpf.core.machine import MachineController
  File "/usr/local/lib/python3.8/dist-packages/mpf/core/machine.py", line 19, in <module>
    from mpf.core.config_processor import ConfigProcessor
  File "/usr/local/lib/python3.8/dist-packages/mpf/core/config_processor.py", line 13, in <module>
    from mpf.core.utility_functions import Util
  File "/usr/local/lib/python3.8/dist-packages/mpf/core/utility_functions.py", line 707
    return asyncio.async(coro_or_future, loop=loop)     # pylint: disable-msg=deprecated-method
                   ^
SyntaxError: invalid syntax
Process Process-1:

Traceback (most recent call last):
  File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
    self.run()
  File "/usr/lib/python3.8/multiprocessing/process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/local/lib/python3.8/dist-packages/mpf/commands/both.py", line 14, in _start_mc
    module.Command(mpf_path, machine_path, args + ["--both"])
  File "/usr/local/lib/python3.8/dist-packages/mpfmc/commands/mc.py", line 44, in __init__
    from mpf.core.utility_functions import Util
  File "/usr/local/lib/python3.8/dist-packages/mpf/core/utility_functions.py", line 707
    return asyncio.async(coro_or_future, loop=loop)     # pylint: disable-msg=deprecated-method
                   ^
SyntaxError: invalid syntax
john@john-NUC7i3BNK:~/Documents/mpf-examples-dev/demo_man$


jabdoa

unread,
Jul 20, 2021, 3:16:36 AM7/20/21
to MPF Users
How did you install dev? Can you post the log? Can you post "pip3 list"? I guess that either install of dev failed or you did not install dev.

Jan

John Walsh

unread,
Jul 20, 2021, 2:28:25 PM7/20/21
to MPF Users
I installed the dev version by downloading the 'dev' zip from git. Then unzipped and ran the install command as directed in the tutorial docs

john@john-NUC7i3BNK:~$ pip3 list
Package                Version
---------------------- --------------------
apturl                 0.5.2
asciimatics            1.13.0
bcrypt                 3.1.7
blinker                1.4
Brlapi                 0.7.0
certifi                2019.11.28
chardet                3.0.4
Click                  7.0
colorama               0.4.3
command-not-found      0.3
cryptography           2.8
cupshelpers            1.0
Cython                 0.29.21
dbus-python            1.2.16
defer                  1.0.6
distro                 1.4.0
distro-info            0.23ubuntu1
docutils               0.16
duplicity              0.8.12.0
entrypoints            0.3
fasteners              0.14.1
future                 0.18.2
httplib2               0.14.0
idna                   2.8
keyring                18.0.1
Kivy                   2.0.0
Kivy-Garden            0.1.4
language-selector      0.1
launchpadlib           1.10.13
lazr.restfulclient     0.14.2
lazr.uri               1.0.3
lockfile               0.12.2
louis                  3.12.0
macaroonbakery         1.3.1
Mako                   1.1.0
MarkupSafe             1.1.0
monotonic              1.5
mpf                    0.51.3
mpf-mc                 0.51.5
netifaces              0.10.4
oauthlib               3.1.0
olefile                0.46
paramiko               2.6.0
pexpect                4.6.0
Pillow                 8.3.1
pip                    21.1.3
protobuf               3.6.1
psutil                 5.8.0
pycairo                1.16.2
pycups                 1.9.73
pyfiglet               0.8.post1
Pygments               2.3.1
PyGObject              3.36.0
PyJWT                  1.7.1
pymacaroons            0.13.0
PyNaCl                 1.3.0
pyRFC3339              1.1
pyserial               3.5
pyserial-asyncio       0.5
python-apt             2.0.0+ubuntu0.20.4.5
python-dateutil        2.7.3
python-debian          0.1.36ubuntu1
pytz                   2019.3
pyxdg                  0.26
PyYAML                 5.3.1
reportlab              3.5.34
requests               2.22.0
requests-unixsocket    0.2.0
roman                  2.0.0
ruamel.base            1.0.0
ruamel.yaml            0.10.8
SecretStorage          2.3.1
setuptools             57.1.0
simplejson             3.16.0
six                    1.14.0
systemd-python         234
terminaltables         3.1.0
typing                 3.7.4.3
ubuntu-advantage-tools 27.0
ubuntu-drivers-common  0.0.0
ufw                    0.36
unattended-upgrades    0.1
urllib3                1.25.8
usb-creator            0.3.7
wadllib                1.3.3
wcwidth                0.2.5
wheel                  0.34.2
xkit                   0.0.0

jabdoa

unread,
Jul 20, 2021, 5:11:54 PM7/20/21
to MPF Users
For some reason you got MPF 0.51 which is quite old. Which install docs did you follow?
Jan

John Walsh

unread,
Jul 20, 2021, 5:53:33 PM7/20/21
to MPF Users

Once I got to the "Install MPF using our Installer" portion, I used the link to the GitHub to get to https://github.com/missionpinball/mpf-debian-installer/tree/dev, then selected "dev" in the dropdown instead of 0.54.x. Then I downloaded the .zip with the green button, extracted it, and ran the install command as given in the mpf doc:
chmod +x install && sudo ./install

jabdoa

unread,
Jul 21, 2021, 12:54:30 PM7/21/21
to MPF Users
That sounds good. For some reason you got a really old version.

Jan

John Walsh

unread,
Jul 21, 2021, 2:38:40 PM7/21/21
to MPF Users
Should I try redownloading it? Is there a way to check the version from the downloaded folder? Is it possible the wrong version is in GIT?

jabdoa

unread,
Jul 21, 2021, 3:05:13 PM7/21/21
to MPF Users
The installer installs the last non-dev version of MPF. It does not install dev at the moment. You can look the the install scripts. It just runs a few commands and you can run them manually. To install mpf dev just add "--pre" to the pip command.

Jan

John Walsh

unread,
Jul 21, 2021, 4:26:55 PM7/21/21
to MPF Users
That seems to have solved that problem, thanks. I can seem to run MPF, but when I try to run in the smart virtual platform, I don't get the expected output in the terminal, there's nothing there. In fact, if I run a simple/empty game as directed in the tutorial, nothing appears:Screenshot from 2021-07-21 16-23-15.png
Checking the log, it looks like MPF is running, but it never seems to initialize the menu in the terminal...
If I run demo_man, the dot pixel display appears, but nothing happens in the terminal window.
Screenshot from 2021-07-21 16-25-41.pngAny ideas what the problem is?

Anthony van Winkle

unread,
Jul 21, 2021, 4:53:44 PM7/21/21
to MPF Users
Hey John-

Be careful with the -b suffix, that skips the MC connection so you won't get any display updates with that. I'll also note that -X with an uppercase X is for the smart virtual platform, while -x with lowercase x is for the standard virtual platform. I honestly don't know the difference, but I always use the lowercase x.

Other flags that are useful is -t for terminal output, which shows logs instead of the standard UI, and -vV for verbose logging (the lowercase is for file logging and the uppercase is for console logging, wise to use both).

When you run mpf with the both argument, it's a 50/50 chance whether you'll see MPF logs or MC logs in the console. For debugging I recommend running mpf in one window and mpf mc in the other, so you can separate the issues.

So I'd start with mpf -xtvV and mpf mc -vV and see what it says! 

John Walsh

unread,
Jul 21, 2021, 7:07:07 PM7/21/21
to MPF Users
Using your commands works and shows me logs instead of the UI. I was using -b to skip the connection because I was testing an empty config file to test MPF as directed by the tutorial. Any idea why the "normal" UI isn't working for me? Neither of the virtual platforms work.

jabdoa

unread,
Jul 22, 2021, 6:08:27 AM7/22/21
to MPF Users
That is a change in dev which is not documented yet and not in the installer yet. Try:

pip3 install --pre --upgrade mpf[all]

To also install optional dependencies. We changed this and made a number of dependencies optional.


Jan

John Walsh

unread,
Jul 22, 2021, 5:10:10 PM7/22/21
to MPF Users
Awesome, that worked! Thanks so much for all your help!
Reply all
Reply to author
Forward
0 new messages