Mac OS X Lion Python Ctype CDLL错误lib.so.6:找不到图像

Gic*_*ian 8 python macos osx-lion

我是Python的初学者.当我在Mac OS X Lion上尝试使用类型库的以下Python示例代码时:

#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)
//
Run Code Online (Sandbox Code Playgroud)

发生错误如下:

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
Run Code Online (Sandbox Code Playgroud)

有人能告诉我什么事吗?顺便说一下,我在Windows和Linux上试过这个; 它运作良好.我需要为ctype做一些配置.

非常感谢,

瑞奇

Kev*_*ant 17

Mac OS X上的共享库往往具有扩展名.dylib而不是.so.在这种情况下,/usr/lib/libc.dylib是你想要的负载libc.dylib.


Ign*_*ams 5

OS X 使用“.dylib”作为其共享对象的扩展名,因此您需要使用“libc.dylib”。