daxter-army / key-cast

Cast your key presses and mouse clicks on the screen, while casting your favorite application on the screen. Better than the rest.
https://daxter-army.github.io/key-cast/
MIT License
24 stars 5 forks source link

doesn't seem to install on Windows OS using Python 3.11.8 #9

Open nnako opened 3 months ago

nnako commented 3 months ago

Hi,

I'd like to install this application following the instructions given in the readme text.

  1. creating and activating the virtual environment
C:\Users\USER\_NEXTCLOUD\_TOOLS\_Python\APP__keycast>python -m venv _venv
C:\Users\USER\_NEXTCLOUD\_TOOLS\_Python\APP__keycast>_venv\Scripts\activate
(_venv) C:\Users\USER\_NEXTCLOUD\_TOOLS\_Python\APP__keycast>
  1. then trying to install using requirements.txt
(_venv) C:\Users\USER\_NEXTCLOUD\_TOOLS\_Python\APP__keycast>pip install -r requirements.txt

results in

Collecting altgraph==0.17.2 (from -r requirements.txt (line 1))
  Downloading altgraph-0.17.2-py2.py3-none-any.whl.metadata (7.2 kB)
Collecting autopep8==1.5.7 (from -r requirements.txt (line 2))
  Downloading autopep8-1.5.7-py2.py3-none-any.whl.metadata (16 kB)
Collecting certifi==2021.5.30 (from -r requirements.txt (line 3))
  Downloading certifi-2021.5.30-py2.py3-none-any.whl.metadata (3.0 kB)
Collecting charset-normalizer==2.0.4 (from -r requirements.txt (line 4))
  Downloading charset_normalizer-2.0.4-py3-none-any.whl.metadata (11 kB)
Collecting evdev==1.4.0 (from -r requirements.txt (line 5))
  Downloading evdev-1.4.0.tar.gz (26 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Collecting idna==3.2 (from -r requirements.txt (line 6))
  Downloading idna-3.2-py3-none-any.whl.metadata (8.6 kB)
Collecting pycodestyle==2.7.0 (from -r requirements.txt (line 7))
  Downloading pycodestyle-2.7.0-py2.py3-none-any.whl.metadata (30 kB)
Collecting pyinstaller==4.5.1 (from -r requirements.txt (line 8))
  Downloading pyinstaller-4.5.1-py3-none-win_amd64.whl.metadata (7.1 kB)
Collecting pyinstaller-hooks-contrib==2021.3 (from -r requirements.txt (line 9))
  Downloading pyinstaller_hooks_contrib-2021.3-py2.py3-none-any.whl.metadata (2.4 kB)
Collecting pynput==1.7.3 (from -r requirements.txt (line 10))
  Downloading pynput-1.7.3-py2.py3-none-any.whl.metadata (29 kB)
Collecting python-xlib==0.31 (from -r requirements.txt (line 11))
  Downloading python_xlib-0.31-py2.py3-none-any.whl.metadata (6.1 kB)
Collecting six==1.16.0 (from -r requirements.txt (line 12))
  Using cached six-1.16.0-py2.py3-none-any.whl.metadata (1.8 kB)
Collecting toml==0.10.2 (from -r requirements.txt (line 13))
  Downloading toml-0.10.2-py2.py3-none-any.whl.metadata (7.1 kB)
Collecting urllib3==1.26.6 (from -r requirements.txt (line 14))
  Downloading urllib3-1.26.6-py2.py3-none-any.whl.metadata (44 kB)
     ---------------------------------------- 44.3/44.3 kB 1.1 MB/s eta 0:00:00
Requirement already satisfied: setuptools in c:\users\USER\_nextcloud\_tools\_python\app__keycast\_venv\lib\site-packages (from pyinstaller==4.5.1->-r requirements.txt (line 8)) (65.5.0)
Collecting pefile>=2017.8.1 (from pyinstaller==4.5.1->-r requirements.txt (line 8))
  Using cached pefile-2023.2.7-py3-none-any.whl.metadata (1.4 kB)
Collecting pywin32-ctypes>=0.2.0 (from pyinstaller==4.5.1->-r requirements.txt (line 8))
  Using cached pywin32_ctypes-0.2.2-py3-none-any.whl.metadata (3.8 kB)
Downloading altgraph-0.17.2-py2.py3-none-any.whl (21 kB)
Downloading autopep8-1.5.7-py2.py3-none-any.whl (45 kB)
   ---------------------------------------- 45.0/45.0 kB 1.1 MB/s eta 0:00:00
Downloading certifi-2021.5.30-py2.py3-none-any.whl (145 kB)
   ---------------------------------------- 145.5/145.5 kB 1.2 MB/s eta 0:00:00
Downloading charset_normalizer-2.0.4-py3-none-any.whl (36 kB)
Downloading idna-3.2-py3-none-any.whl (59 kB)
   ---------------------------------------- 59.6/59.6 kB 1.1 MB/s eta 0:00:00
Downloading pycodestyle-2.7.0-py2.py3-none-any.whl (41 kB)
   ---------------------------------------- 41.7/41.7 kB 2.1 MB/s eta 0:00:00
Downloading pyinstaller-4.5.1-py3-none-win_amd64.whl (1.9 MB)
   ---------------------------------------- 1.9/1.9 MB 1.1 MB/s eta 0:00:00
Downloading pyinstaller_hooks_contrib-2021.3-py2.py3-none-any.whl (200 kB)
   ---------------------------------------- 200.1/200.1 kB 1.2 MB/s eta 0:00:00
Downloading pynput-1.7.3-py2.py3-none-any.whl (99 kB)
   ---------------------------------------- 99.7/99.7 kB 1.1 MB/s eta 0:00:00
Downloading python_xlib-0.31-py2.py3-none-any.whl (179 kB)
   ---------------------------------------- 179.0/179.0 kB 1.2 MB/s eta 0:00:00
Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Downloading toml-0.10.2-py2.py3-none-any.whl (16 kB)
Downloading urllib3-1.26.6-py2.py3-none-any.whl (138 kB)
   ---------------------------------------- 138.5/138.5 kB 822.1 kB/s eta 0:00:00
Using cached pefile-2023.2.7-py3-none-any.whl (71 kB)
Using cached pywin32_ctypes-0.2.2-py3-none-any.whl (30 kB)
Building wheels for collected packages: evdev
  Building wheel for evdev (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for evdev (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [37 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-cpython-311
      creating build\lib.win-amd64-cpython-311\evdev
      copying evdev\device.py -> build\lib.win-amd64-cpython-311\evdev
      copying evdev\ecodes.py -> build\lib.win-amd64-cpython-311\evdev
      copying evdev\eventio.py -> build\lib.win-amd64-cpython-311\evdev
      copying evdev\eventio_async.py -> build\lib.win-amd64-cpython-311\evdev
      copying evdev\events.py -> build\lib.win-amd64-cpython-311\evdev
      copying evdev\evtest.py -> build\lib.win-amd64-cpython-311\evdev
      copying evdev\ff.py -> build\lib.win-amd64-cpython-311\evdev
      copying evdev\genecodes.py -> build\lib.win-amd64-cpython-311\evdev
      copying evdev\uinput.py -> build\lib.win-amd64-cpython-311\evdev
      copying evdev\util.py -> build\lib.win-amd64-cpython-311\evdev
      copying evdev\__init__.py -> build\lib.win-amd64-cpython-311\evdev
      running build_ext
      running build_ecodes
      The 'linux/input.h' and 'linux/input-event-codes.h' include files
      are missing. You will have to install the kernel header files in
      order to continue:

          yum install kernel-headers-$(uname -r)
          apt-get install linux-headers-$(uname -r)
          emerge sys-kernel/linux-headers
          pacman -S kernel-headers

      In case they are installed in a non-standard location, you may use
      the '--evdev-headers' option to specify one or more colon-separated
      paths. For example:

          python setup.py \
            build \
            build_ecodes --evdev-headers path/input.h:path/input-event-codes.h \
            build_ext --include-dirs  path/ \
            install
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for evdev
Failed to build evdev
ERROR: Could not build wheels for evdev, which is required to install pyproject.toml-based projects

(_venv) C:\Users\USER\_NEXTCLOUD\_TOOLS\_Python\APP__keycast>

seems like Linux dependencies needed for evdev break the process?

Any hints?

nnako commented 3 months ago

As you have been able to create a binary that runs on Windows OS, there must have been a way to install all the necessary packages on that target system. Do you know what you had to do in order to install on Windows?