External libraries and dependencies

From SweepMe! Wiki
Revision as of 23:15, 13 May 2018 by Afischer (talk | contribs)
Jump to navigation Jump to search

Python modules

Not all available packages for Python can be part of SweepMe!. Still, you can add these packages to your Device Class and load them from a subfolder. In that case, it might be that sub-dependencies will be shipped twice, once with SweepMe! and once with your Device Class.

For that reason, we recommnend to use our Library Builder which adds all missing packages to a folder which you can copy into your Device Class folder. The Library Builder is available through your sweep-me.net user account. Please contact us to get one (contact@sweep-me.net).

Requirements

  • Installed environment of Python as used for SweepMe! @FK: we need to state version in credits.html or elsewhere
  • All packages installed you need for your Device Class
  • @ FK: Is pyinstaller needed?

Extracting the missing packages

  1. Goto LibraryBuilder folder
  2. Open build_library.py and change sweepme_path to your installation path of SweepMe!
  3. Open required_modules.py and import all packages which are missing in SweepMe!
  4. Run build_library.py
  5. Copy the folder libs_required_modules to your DC and rename as desired
  6. Do not forget to add licence files for each packages you added yourself

Loading the mising packages in your Device Class

  1. Add the path of your libs within your Device Class to the variable sys.path:

libpath = os.path.dirname(__file__) + "\\libs" if not libpath in sys.path:

   sys.path.append(libpath)
  1. Now import your libs as usual

import *name of the lib*

  1. If it does not work, plesae contact us


DLL

.Net DLL