python - 如何在将 .py 编译为 .pyd 时修复“找不到 -lvcruntime140.dll”?
问题描述
我正在尝试将我的 python 模块从转换.py
为.pyd
dll。
每次我尝试执行我的安装脚本时。
from distutils.core import setup
from distutils.extension import Extension
from Cython.Distutils import build_ext
ext_modules = [
Extension("core", ["core.py"]),
]
setup(
name = 'core',
cmdclass = {'build_ext': build_ext},
ext_modules = ext_modules
)
我收到此错误:
c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: cannot find -lvcruntime140.dll
collect2.exe: error: ld returned 1 exit status
error: command 'C:\\MinGW\\bin\\gcc.exe' failed with exit status 1
解决方案
使用以下命令解决了我的问题:
- 通过以下方式将我的脚本转换为 C 代码
cython
:
cython -3 main.py
- 直接使用gcc转换
.c
为.pyd
dll:
gcc main.c -o main.pyd -shared -IC:\Python36\include -LC:\Python36\libs -lpython36
推荐阅读
- ionic4 - Ionic 4动态改变动态变量的背景
- python - 从多个数据框 Pandas 构建 DataFrame 值
- java - 将日期转换为天
- java - Android - 从返回 null 但连接正常的 URL 解析 JSON 明文
- swift - 初始颜色设置不正确(Swift UI)
- angular - 拖动时禁用 cdkDragLockAxis
- r - 更改 plotrix'multhist 中的字体
- python - 有没有办法让多个 IndexedVertexLists 引用相同的顶点,同时具有不同的索引列表
- wordpress - wordpress 主页 url 重定向到本地主机
- google-apps-script - 如何判断 Google 表格是否已共享?