在Python中加载DLL

0 投票
1 回答
515 浏览
提问于 2025-04-30 22:47

我正在按照这里的指南进行操作:

http://www.dalkescientific.com/writings/NBN/c_extensions.html

目的是为了给Python创建C扩展。但是,当我在构建完这个模块后尝试运行任何Python程序,比如页面上列出的第一个程序或者mandelbrot.py(在页面末尾列出)时,我在这一行遇到了错误:libc = ctypes.CDLL("libc.dylib", ctypes.RTLD_GLOBAL)

错误信息是:

Traceback (most recent call last):
File "cos.py", line 5, in < module >
libc = ctypes.CDLL("libc.dylib", ctypes.RTLD_GLOBAL)
File "/usr/lib/python2.7/ctypes/__init__.py", line 365, in __init__
self._handle = _dlopen(self._name, mode)
OSError: libc.dylib: cannot open shared object file: No such file or directory

我在使用Linux,所以不确定这是否是问题所在。如果是的话,我该如何在Linux上完成这个操作呢?我知道在Windows中,dll是指共享对象。但在Linux中,语法会改变吗?我似乎找不到答案。

暂无标签

1 个回答

1

在GNU/Linux系统中,cos()这个函数是在一个叫做libm.so的库里。所以你需要把"libc.dylib"换成"libm.so"。

撰写回答