Skip to content

Creating Binary Packages

Mark Jessop edited this page Feb 6, 2022 · 17 revisions

Windows

  • Use stock Python 3.7 for Windows (no Anaconda Python!!!). (Note - Python 3.7.9 is used to ensure Win 7 support)
  • Create and enter venv (python -m venv venv, etc...)
  • 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
  • pip install pyinstaller
  • Download libhorus.dll from the latest release into the current directory.
  • Copy the following DLLs from a MinGW-64 installation (Program Files\mingw-w64\x86_64\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!

OSX

(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>
Clone this wiki locally