Python 导入编译函数

Python importing compiled functions

我下载了一个 'custom' fisher 精确测试,该测试基于 R 函数,该函数又从 C/FORTRAN (source)

编译而来

该软件包包括主要的 file/function (Fisher.py),后者又从 fexact、asa159 和 asa205 文件中导入函数。问题是这些文件是 C 共享对象,即具有 .so 扩展名,因此 python 在导入时无法识别它们;给出一个错误。

  ...customlib/fexact.so, 2): no suitable image found.  Did find:
  .../customlib/fexact.so: unknown file type, first eight bytes: 0x7F 0x45 0x4C 0x46 0x02 0x01 0x01 0x00

不确定如何处理。

Fisher.py 包含:

  import customlib.fexact as f
  from customlib.fexact import fisher_exact as f_exact
  from customlib.asa159 import rcont2
  from customlib.asa205 import enum as rcont

customlib 文件夹包含: 1. __init__ 2. asa159.so 3. asa205.so 4. fexact.so

运行包中提供的重新编译脚本。这些库是为原作者使用的系统编译的,不能跨系统移植。您可能需要更新 f2py 的调用以指向正确的版本供您使用。