-
Notifications
You must be signed in to change notification settings - Fork 11
Creating Binary Packages
Mark Jessop edited this page May 21, 2023
·
17 revisions
- Use stock Python 3.7 for Windows (no Anaconda Python!!!). (Note - Python 3.7 is used to ensure Win 7 support)
- https://www.python.org/ftp/python/3.7.9/python-3.7.9-amd64.exe
- When installing, ensure the Python install is added to the system path.
- Create and enter venv
- python -m venv
- venv\Scripts\activate.bat
- Install PyAudio from wheel here: https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyaudio (get the cp37m-win_amd64 wheel, then
pip install filename.whl) - Then get rest of dependencies with: pip install -r requirements.txt
- Download libhorus.dll and put into the current directory: https://github.com/projecthorus/horusdemodlib/releases/download/v0.1.21/libhorus.dll
- Can now test starting Horus-GUI by running: python horus-gui.py
(May experience issues when trying to start the decoder, saying it cant find the DLL file... need to investigate).
Horus-GUI seems to run OK under Python 3.11.3 on Windows (unsure about stability).
- Download: https://www.python.org/ftp/python/3.11.3/python-3.11.3-amd64.exe
- Make venv: python -m venv venv
- If you have multiple installs of python, you will need to replace 'python' with the full path to python.exe e.g.: C:\Users\USERNAME\AppData\Local\Programs\Python\Python311\python.exe -m venv venv
- Enter venv: venv\Scripts\activate.bat
- Then get rest of dependencies with: pip install -r requirements.txt
- Note there is no need to get pyaudio separately, we can just get this via pip.
- Download libhorus.dll and put into the current directory: https://github.com/projecthorus/horusdemodlib/releases/download/v0.1.21/libhorus.dll
- Can now test starting Horus-GUI by running: python horus-gui.py
Same issue with finding the DLL happens. Unsure why. Works fine once built using pyinstaller (instructions below).
-
pip install pyinstaller
-
Copy the following DLLs from a MinGW-64 installation (C:\mingw64\bin) into the current directory:
- libgcc_s_seh-1.dll
- libwinpthread-1.dll
- libstdc++-6.dll
-
Now run: pyinstaller horus-gui_win.spec
-
Should build OK!
-
This will create a directory 'dist/' with horus-gui.exe in it! That's it!
(Assuming you have Python 3.7 available via Macports)
- Get to the point of having horus-gui running from the terminal, by following the instructions on the main README.md
- Note that you need to have horusdemodlib in a directory up from horus-gui (e.g.
../horusdemodlib/exists, and is built. In particular, we need../horusdemodlib/build/src/libhorus.dylib) - pip install pyinstaller
- pyinstaller horus-gui_osx.spec
Then, you will need to edit the Info.plist file within the generated appbundle, and add into the <dict> section:
<key>NSMicrophoneUsageDescription</key>
<string>Horus-GUI needs audio access to receive telemetry.</string>