Re: libphidget22.so.0.0.0: cannot open shared object file
Posted: Tue Aug 15, 2017 8:24 am
Regarding "libphidget22.so.0.0.0: cannot open shared object file" error:
I'm running 64 bit Ubuntu 16.04.3 on a 64 bit machine. I installed libphidget22, libphidget22extra, libphidget22java, phidget22networkserver and phidget22admin manually as per instructions. All installed ok and ran c examples ok.
But I got this when trying to run HelloWorld.py Python example:
Traceback (most recent call last):
File "HelloWorld.py", line 41, in <module>
try: manager = Manager()
File "/usr/local/lib/python2.7/dist-packages/Phidget22/Devices/Manager.py", line 28, in __init__
__func = PhidgetSupport.getDll().PhidgetManager_create
File "/usr/local/lib/python2.7/dist-packages/Phidget22/PhidgetSupport.py", line 17, in getDll
PhidgetSupport.__dll = cdll.LoadLibrary("libphidget22.so.0.0.0")
File "/usr/lib/python2.7/ctypes/__init__.py", line 440, in LoadLibrary
return self._dlltype(name)
File "/usr/lib/python2.7/ctypes/__init__.py", line 362, in __init__
self._handle = _dlopen(self._name, mode)
OSError: libphidget22.so.0.0.0: cannot open shared object file: No such file or directory
Exception OSError: OSError('libphidget22.so.0.0.0: cannot open shared object file: No such file or directory',) in <bound method Manager.__del__ of <Phidget22.Devices.Manager.Manager instance at 0x7f6b1f411f80>> ignored
I checked and libphidgete22.so.0.0 and libphidget22extra.so.0.0 were located in /usr/local/lib, but Python is looking in /usr/lib.
I took Patrick's first suggestion "./configure --prefix=/usr && make && sudo make install" and Python now works ok.
Thanks Patrick!
I'm running 64 bit Ubuntu 16.04.3 on a 64 bit machine. I installed libphidget22, libphidget22extra, libphidget22java, phidget22networkserver and phidget22admin manually as per instructions. All installed ok and ran c examples ok.
But I got this when trying to run HelloWorld.py Python example:
Traceback (most recent call last):
File "HelloWorld.py", line 41, in <module>
try: manager = Manager()
File "/usr/local/lib/python2.7/dist-packages/Phidget22/Devices/Manager.py", line 28, in __init__
__func = PhidgetSupport.getDll().PhidgetManager_create
File "/usr/local/lib/python2.7/dist-packages/Phidget22/PhidgetSupport.py", line 17, in getDll
PhidgetSupport.__dll = cdll.LoadLibrary("libphidget22.so.0.0.0")
File "/usr/lib/python2.7/ctypes/__init__.py", line 440, in LoadLibrary
return self._dlltype(name)
File "/usr/lib/python2.7/ctypes/__init__.py", line 362, in __init__
self._handle = _dlopen(self._name, mode)
OSError: libphidget22.so.0.0.0: cannot open shared object file: No such file or directory
Exception OSError: OSError('libphidget22.so.0.0.0: cannot open shared object file: No such file or directory',) in <bound method Manager.__del__ of <Phidget22.Devices.Manager.Manager instance at 0x7f6b1f411f80>> ignored
I checked and libphidgete22.so.0.0 and libphidget22extra.so.0.0 were located in /usr/local/lib, but Python is looking in /usr/lib.
I took Patrick's first suggestion "./configure --prefix=/usr && make && sudo make install" and Python now works ok.
Thanks Patrick!