Suprava
Suprava

Reputation: 91

Pyinstaller : .exe file doesn't work the same way as in IDE

I have written a python script, using eel for the GUI, that converts & does some calculations on files in a folder. For this, i am using a python library called asammdf. The code works well in an IDE but when i use pyinstallerand create a .exe file the code doesn't seem to work the same way.

import eel
from pathlib import Path
from asammdf import MDF
from pathlib import Path
import glob
import sys
import os
from datetime import timedelta


eel.init("path\to\folder\Python")
def python_code():
    # a python script that uses asammdf

@eel.expose

I have tried copying the asammdf directory into the python folder and pyinstaller seems to include it in the .exe dist folder but still it doesn't work. Can anyone help me out please?

The error message comes as --

asammdf\mdf.py:4597: UserWarning: The argument `ignore_invalid_signals` from the method `extract_bus_logging` is no longer used and will be removed in the future
Traceback (most recent call last):
  File "eel\__init__.py", line 281, in _process_message
  File "converterrxd_csv.py", line 79, in pythoncode
  File "asammdf\mdf.py", line 4625, in extract_bus_logging
  File "asammdf\mdf.py", line 4666, in _extract_can_logging
  File "asammdf\blocks\utils.py", line 1807, in load_can_database
  File "canmatrix\formats\__init__.py", line 71, in loadp
  File "canmatrix\formats\__init__.py", line 86, in load
KeyError: 'canmatrix.formats.dbc'

I tried installing the can-matrix package as well but that doesn't solve the problem.

Upvotes: -1

Views: 544

Answers (1)

danielhrisca
danielhrisca

Reputation: 730

You need to add the hidden import for canmatrix

see https://github.com/danielhrisca/asammdf/blob/180a1588737ae7aaf367aaa8fd1c81aff616df16/asammdf.spec#L37

Upvotes: 1

Related Questions