Wie man erpc ValueError repariert: The generated shim code version ... is different to the rest of eRPC code

Problem:

Beim Versuch, deinerpc-Projekt-generierten Python-Code zu importieren, z.B. mit

erpc_import_example.py
from erpc_myproject import *

siehst du die folgende Fehlermeldung:

erpc_traceback.txt
Traceback (most recent call last)
Cell In [1], line 1
----> 1 from erpc_myproject import *

File ./erpc_myproject/__init__.py:13
    11     version = "unknown"
    12 if version != "1.9.1":
---> 13     raise ValueError("The generated shim code version (1.9.1) is different to the rest of eRPC code (%s). \
    14 Install newer version by running \"python setup.py install\" in folder erpc/erpc_python/." % repr(version))
    16 from . import common
    17 from . import client

ValueError: The generated shim code version (1.9.1) is different to the rest of eRPC code ('unknown'). Install newer version by running "python setup.py install" in folder erpc/erpc_python/.

Lösung

Entweder hast du die erpc-Python-Bibliothek nicht installiert (wenn die Fehlermeldung ... different to the rest of eRPC code ('unknown') auflistet) oder du hast die falsche Version installiert (z.B. ... (1.9.1) is different to the rest of eRPC code ('1.10.0')).

Wenn du erpc gar nicht installiert hast, verwende einfach

pip_install_erpc.sh
pip install erpc

und versuche erneut, dein Skript auszuführen.

Wenn du die falsche Version installiert hast, hast du zwei Optionen:

Option 1 (bevorzugt): Code neu generieren

Verwende einfach den ursprünglichen Befehl (einen erpcgen-Aufruf), den du verwendet hast, um den Code mit der aktuell installierten Version neu zu generieren.

Option 2: Die richtige Version installieren

Dafür musst du bestimmen, was die richtige Version ist. Betrachten wir die folgende Fehlermeldung:

erpc_version_mismatch.txt
ValueError: The generated shim code version (1.9.1) is different to the rest of eRPC code ('1.10.0'). Install newer version by running "python setup.py install" in folder erpc/erpc_python/.

Aus dieser Nachricht können wir lesen, dass die Shim-Code-Version 1.9.1 ist, während du 1.10.0 installiert hast. Um es zum Laufen zu bringen, müssen wir erpc-Version 1.9.1 installieren.

Installiere es mit

pip_install_erpc_version.sh
pip install -U erpc==1.9.1

und versuche dann deinen Befehl erneut. Wenn du Jupyter-Notebooks oder ähnliches verwendest, musst du deinen Kernel neu starten, um die neue Bibliothek zu laden!


Ähnliche Beiträge nach Kategorie: Embedded Python