我有一个 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 和 …