Skip to main content
 首页 » 编程设计

python之在 Linux 上的 Python 中导入 dll

2025年05月04日15jiqing9006

您好,我有这段代码可以在 Windows 上完美运行:

    import ctypes 
    import sys 
    import os 
    from ctypes import * 
    from numpy import * 
    import time 
    from ctypes.util import find_library 
    libEDK = cdll.LoadLibrary("edk.dll") 

我尝试在 Ubuntu 上运行它,我得到了这个:

Traceback (most recent call last): 
 
 File "/home/nassar/Downloads/python/sds.py", line 9, in <module>  
   libEDK = cdll.LoadLibrary("/home/nassar/Desktop/python/edk.dll") 
  File "/usr/lib/python2.7/ctypes/__init__.py", line 443, in LoadLibrary 
    return self._dlltype(name) 
  File "/usr/lib/python2.7/ctypes/__init__.py", line 365, in __init__ 
    self._handle = _dlopen(self._name, mode) 
OSError: /home/nassar/Desktop/python/edk.dll: invalid ELF header 

请您参考如下方法:

呃...你不能那样做;

共享库非常依赖于操作系统,因此为 Windows 构建的库不可能在 Linux 中运行,反之亦然。

除非你可能得到一些运气 Wine ,这是一个 Windows 运行时,可以跨多个平台运行。我在 wine 中运行 Python 二进制文件当然取得了一些成功。