解决“subprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned non-zero exit status 1”错误的方法详解

2023.8.1更新:各个库的版本更新可能会导致这里的方法不可用,大家如果遇到这个错误,也可以尝试安装ninja,应该也能解决

这个错误的出现主要是因为pytorch版本大于1.5,可行的解决方法有两个:

1. 将pytorch版本降到1.5以下;

2. 将setup.py中的“cmdclass={'build_ext': BuildExtension}”这一行改为“cmdclass={'build_ext': BuildExtension.with_options(use_ninja=False)}”,pytorch默认使用ninjia作为backend,这里把它禁用掉就好了;

网上有一些方法让将torch/utils/cpp_extension.py中的['ninja','-v']改成['ninja','--version'],这个方法或许可行,但修改系统文件是很危险的,不建议这么做。

物联沃分享整理
物联沃-IOTWORD物联网 » 解决“subprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned non-zero exit status 1”错误的方法详解

发表评论