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.
You need to add the hidden import for canmatrix
see https://github.com/danielhrisca/asammdf/blob/180a1588737ae7aaf367aaa8fd1c81aff616df16/asammdf.spec#L37