I am a beginner in Python. When I tried the following Python sample code with type library on Mac OS X Lion:
#hello.py
from ctypes import *
cdll.LoadLibrary("libc.so.6")
libc = CDLL("libc.so.6")
message_string = "Hello World! Hello Python!\n"
libc.printf("Testing :%s",message_string)
//
An error occurred as following:
Traceback (most recent call last):
File "cprintf.py", line 2, in <module>
cdll.LoadLibrary("libc.so.6")
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 431, in LoadLibrary
return self._dlltype(name)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 353, in __init__
self._handle = _dlopen(self._name, mode)
OSError: dlopen(libc.so.6, 6): image not found
Can anyone tell me what’s the matter? BTW, I tried this on Windows and Linux; it worked well.
Need I make some configuration for ctype.
Thanks very much,
Ricky
Shared libraries on Mac OS X tend to have the extension
.dylibinstead of.so. In this case,/usr/lib/libc.dylibis what you want so loadlibc.dylib.