小编Kia*_*Lin的帖子

Python -> Cython -> C -> DLL -> 在 Cpp 上工作但未找到模块

我有一个 C 文件,它用 Cython 调用 Python 函数。

Python文件有import torch(Pytorch 0.4.0),函数使用torch。

然后我用这个 C 文件创建 .dll。

问题发生在这里:

当我在cpp文件中使用这个dll时,它有ModuleNotFoundError。

这是我的简单代码:

环境:
  Windows 10 x64
  视觉工作室 2017
  蟒蛇3
  Python 3.6
  火炬0.4.0
  赛通0.28.2

PyTest.pyx

import torch
cdef public void HelloWorld():
    print('Hello!')
    print(torch.__version__)
    print('World!')
Run Code Online (Sandbox Code Playgroud)

安装程序.py

from distutils.core import setup
from distutils.extension import Extension
from Cython.Distutils import build_ext
from Cython.Build import cythonize
setup(name = 'PyTest',
      cmdclass = {'build_ext' : build_ext},
      ext_modules = cythonize('PyTest.pyx')
      )
Run Code Online (Sandbox Code Playgroud)

在终端中运行 setup.py

python setup.py build_ext --inplace
Run Code Online (Sandbox Code Playgroud)

生成文件:PyTest.c 和 PyTest.h

创建 C 文件:C_Test.c 和 …

c python dll cython python-3.x

5
推荐指数
0
解决办法
984
查看次数

标签 统计

c ×1

cython ×1

dll ×1

python ×1

python-3.x ×1