raspberry pi5 kneron_plus 2.3.0 python issue
env:
raspberry pi5 with 64-bit pi os bookwrom (or ubuntu 23.04 desktop) I had try both env
python (miniconda) 3.9.19
sudo bash install_libusb.sh
pip install kneron_plus/python/package/ubuntu/KneronPLUS-2.3.0-py3-none-any.whl
issue:
#######################################
i ran any example like python ScanDevices.py got same error msg :
Traceback (most recent call last):
File "/home/richard/kneron_plus_v2.3.0/kneron_plus/python/example/ScanDevices.py", line 11, in <module>
import kp
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/__init__.py", line 5, in <module>
from .KP import *
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KP.py", line 6, in <module>
from .Legacy import V1 as v1
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/Legacy/V1/__init__.py", line 5, in <module>
from .KP import *
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/Legacy/V1/KP.py", line 5, in <module>
from .KPInference import KPInference as inference
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/Legacy/V1/KPInference.py", line 6, in <module>
from .KPValue import \
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/Legacy/V1/KPValue.py", line 16, in <module>
from ...KPValue import \
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPValue.py", line 6, in <module>
from .KPWrapperUtils import KPWrapperUtils as wrapper_utils
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPWrapperUtils.py", line 10, in <module>
class KPWrapperUtils:
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPWrapperUtils.py", line 11, in KPWrapperUtils
__KP_WRAPPER = KPWrapper()
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPBaseClass/WrapperBase.py", line 16, in __call__
instance = super(Singleton, cls).__call__(*args, **kwargs)
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPWrapper.py", line 34, in __init__
super(KPWrapper, self).__init__(lib_loader=KPLibLoader())
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPBaseClass/WrapperBase.py", line 25, in __init__
self._load_libKP()
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPBaseClass/WrapperBase.py", line 33, in _load_libKP
ctypes.CDLL(share_lib, mode=ctypes.RTLD_GLOBAL)
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/ctypes/__init__.py", line 382, in __init__
self._handle = _dlopen(self._name, mode)
OSError: /home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPBaseClass/../../kp/lib/libusb-1.0.so.0: cannot open shared object file: No such file or directory
############################################
i ran any example like python python KL720DemoCamGenericImageInference.py got same error msg :
Traceback (most recent call last):
File "/home/richard/kneron_plus_v2.3.0/kneron_plus/python/example/KL720DemoCamGenericImageInference.py", line 15, in <module>
from utils.ExampleHelper import get_device_usb_speed_by_port_id
File "/home/richard/kneron_plus_v2.3.0/kneron_plus/python/example/utils/ExampleHelper.py", line 15, in <module>
import kp
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/__init__.py", line 5, in <module>
from .KP import *
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KP.py", line 6, in <module>
from .Legacy import V1 as v1
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/Legacy/V1/__init__.py", line 5, in <module>
from .KP import *
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/Legacy/V1/KP.py", line 5, in <module>
from .KPInference import KPInference as inference
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/Legacy/V1/KPInference.py", line 6, in <module>
from .KPValue import \
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/Legacy/V1/KPValue.py", line 16, in <module>
from ...KPValue import \
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPValue.py", line 6, in <module>
from .KPWrapperUtils import KPWrapperUtils as wrapper_utils
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPWrapperUtils.py", line 10, in <module>
class KPWrapperUtils:
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPWrapperUtils.py", line 11, in KPWrapperUtils
__KP_WRAPPER = KPWrapper()
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPBaseClass/WrapperBase.py", line 16, in __call__
instance = super(Singleton, cls).__call__(*args, **kwargs)
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPWrapper.py", line 34, in __init__
super(KPWrapper, self).__init__(lib_loader=KPLibLoader())
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPBaseClass/WrapperBase.py", line 25, in __init__
self._load_libKP()
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPBaseClass/WrapperBase.py", line 33, in _load_libKP
ctypes.CDLL(share_lib, mode=ctypes.RTLD_GLOBAL)
File "/home/richard/.conda/envs/kneron_py39/lib/python3.9/ctypes/__init__.py", line 382, in __init__
self._handle = _dlopen(self._name, mode)
OSError: /home/richard/.conda/envs/kneron_py39/lib/python3.9/site-packages/kp/KPBaseClass/../../kp/lib/libusb-1.0.so.0: cannot open shared object file: No such file or directory
Comments
Hi,
Kneron PLUS can run on these environments:
Could you check if you've installed the required packages? Please refer to: Install Dependency - Document Center (kneron.com)
If you've already installed these, could you try building C code and running it? Thanks!
你好:
我想釐清,我想要在plus python 環境下跑,還是需要先安裝好C環境相關套件嗎?我在同樣的環境下用 plus c 是完全沒問題的喔,但是我習慣用python ,謝謝
Hi,
不用一定要先安裝好C的環境,只是想要確認您在哪一個環境下可以正常跑。請您安裝python/package/raspbianpi4試試看,一般在raspberry pi跑Python的時候要安裝raspbianpi4的package,而不是ubuntu的。
我試過了,但是raspi的套件好像是32位元的,但現在都使用64位元環境了,即使是pi4應該沒人安裝32位於了吧?錯誤訊息摘錄末段:OSError: /home/richard/kneron/env/lib/python3.11/site-packages/kp/KPBaseClass/../../kp/lib/libusb-1.0.so.0: wrong ELF class: ELFCLASS32
謝謝協助
補充一點我覺得奇怪的是,該路徑 site-packages/kp/KPBaseClass到這裡已經是尾端,也就是這資料夾下只有檔案沒有其他子資料夾了,但程式卻要找../../kp/lib/libusb-1.0.so.0 這路徑(與檔案)根本就不存在啊?謝謝
Hi,
是的,raspberry pi的套件支持pi 4 32-bit。我和同事確認過了,只能請您用C去做開發,不好意思!