ctypes: loading .so file on Linux
Paddy
paddy3118 at googlemail.com
Sat Aug 23 09:33:47 EDT 2008
Hi,
I am am falling at the first hurdle when trying to access a library
using ctypes.
I have a file libucdb.so which the file command says is shared object,
but I cannot get it to load:
Any help would be appreciated:
dmccarthy: file /opt/questasim_6.4/questasim/linux/libucdb.a /opt/
questasim_=
6.4/questasim/linux/libucdb.so
/opt/questasim_6.4/questasim/linux/libucdb.a: current ar archive
/opt/questasim_6.4/questasim/linux/libucdb.so: ELF 32-bit LSB shared
object,=
Intel 80386, version 1 (SYSV), not stripped
dmccarthy: python
ActivePython 2.5.1.1 (ActiveState Software Inc.) based on
Python 2.5.1 (r251:54863, May 2 2007, 08:46:07)
[GCC 3.3.4 (pre 3.3.5 20040809)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> cdll.LoadLibrary("libc.so.6")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'cdll' is not defined
>>> from ctypes import *
>>> ^[[A^[[A
^e "<stdin>", line 1
SyntaxError: invalid syntax
>>> cdll.LoadLibrary("libc.so.6")
<CDLL 'libc.so.6', handle 2a958a2900 at 2a95dda490>
>>> cdll.LoadLibrary("libucdb.so")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/software/unix-soft/linux/ActivePython-2.5.1.1-linux-x86_64/
lib/pyth=
on2.5/ctypes/__init__.py", line 423, in LoadLibrary
return self._dlltype(name)
File "/software/unix-soft/linux/ActivePython-2.5.1.1-linux-x86_64/
lib/pyth=
on2.5/ctypes/__init__.py", line 340, in __init__
self._handle =3D _dlopen(self._name, mode)
OSError: libucdb.so: cannot open shared object file: No such file or
directo=
ry
>>> cdll.LoadLibrary("libc.so.6")
<CDLL 'libc.so.6', handle 2a958a2900 at 2a95df3ad0>
>>> libc =3D CDLL("libc.so.6")
>>> libc
<CDLL 'libc.so.6', handle 2a958a2900 at 2a95dda490>
>>> libc =3D CDLL("libucdb.so")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/software/unix-soft/linux/ActivePython-2.5.1.1-linux-x86_64/
lib/pyth=
on2.5/ctypes/__init__.py", line 340, in __init__
self._handle =3D _dlopen(self._name, mode)
OSError: libucdb.so: cannot open shared object file: No such file or
directo=
ry
>>> libc =3D CDLL("/opt/questasim_6.4/questasim/linux/libucdb.so")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/software/unix-soft/linux/ActivePython-2.5.1.1-linux-x86_64/
lib/pyth=
on2.5/ctypes/__init__.py", line 340, in __init__
self._handle =3D _dlopen(self._name, mode)
OSError: /opt/questasim_6.4/questasim/linux/libucdb.so: cannot open
shared o=
bject file: No such file or directory
>>> ^[[A
File "<stdin>", line 1
^
SyntaxError: invalid syntax
>>>
- Paddy.
More information about the Python-list
mailing list