error: Unable to find vcvarsall.bat

执行kitsune的example时,运行setup.py将Python代码翻译为C代码,编译setup代码报错。介绍了Cython用法,以vs2017为例,需找到对应python文件修改两行内容,best_dir对应vcvarsall.bat文件位置,不同版本需自行查找修改,还可参考博客用命令行编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在执行kitsune的example时,我需要先运行setup.py文件,将项目中的Python代码翻译为C代码。在编译setup代码时python setup.py build_ext --inplace,出现了error: Unable to find vcvarsall.bat报错。下面介绍相关原理以及具体的解决办法。
在这里插入图片描述

首先需要介绍Cython的用法

参考博客

解决方法

  1. 我安装的是vs2017,所以以vs2017为列
  2. 找到你使用的python中的对应文件,我用的是anaconda中的python,路径为:D:\Anaconda3\Lib\distutils\_msvccompiler.py
  3. 打开这个py文件,做如下修改:
    在这里插入图片描述
best_version = 14
best_dir = "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Auxiliary\\Build"

修改这两行就可以了,best_dir对应的是vs2017中的vcvarsall.bat文件的位置,不同vs版本的vcvarsall.bat位置不同,需要自己查找修改。
其他的解决方案:参考博客

  1. 使用命令行编译Python代码:
    python setup.py build_ext --inplace
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值