Windows pytorch编译安装SoftPool

较高版本pytorch上编译安装SoftPool报错error: identifier “inf” is undefined解决

编译安装准备

Windows上将基于CUDA的SoftPool编译安装为pytorch的工具库,需要实现安装配置完Cmake、MinGW64编译工具软件

安装配置Cmake

官方下载链接
https://cmake.org/download/
一般在Latest Release部分下载(64bit Windows系统)对应的版本,安装过程中直接勾选“路径加入系统环境变量Path”的选项即可,免得后续手动添加麻烦;

安装配置MinGW64

Cmake要通过命令make方式编译还需要另外安装MinGW的编译工具,针对系统位数版本(x64)下载MinGW64并安装,官方下载链接:
https://github.com/niXman/mingw-builds-binaries/releases
在其中,鉴于Win11 (x64bit),故选择 x86_64-12.2.0-release-win32-seh-rt_v10-rev0.7z并下载解压,然后设置环境变量Path:只需把bin文件夹的路径 C:\MinGW\bin 放到用户变量中去;
此外,由于一般要使用make命令,还需要打开MinGW的安装目录,打开bin文件夹,将mingw32-make.exe重命名为make.exe;

详细配置参考:
https://blog.csdn.net/weixin_39506322/article/details/91978490

下载编译SoftPool

貌似有其它不需要编译就可以用的.py脚本,但之前没注意就找了这个需要编译安装的,项目源码链接如下:
https://github.com/alexandrosstergiou/SoftPool
下载项目到本地后,按照README.md中的操作去编译,或者使用命令python setup.py install去编译安装;
较低版本pytorch上一切都进展很顺利,无报错,但是在较高版本pytorch上会莫名报错提示:【共有4处】
SoftPool-master\pytorch\CUDA\limits.cuh(119): error: identifier “inf” is undefined
按照GitHub上原项目链接一个问题讨论【https://github.com/alexandrosstergiou/SoftPool/issues/45】说换用pytorch 1.7的环境就可以解决,但觉得比较麻烦,毕竟不想换环境了;
看样子是变量或者宏未定义,就参考别的文章在include指令后面定义了个整型数inf并赋值为很大的数:
const int inf=0x3f3f3f3f
相关设定参考:
https://www.cnblogs.com/JHASH/p/15138484.html

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值