0. ERS算法
xxx
1. 问题
原本ERS算法的作者提供了python接口,但是是基于Python2的,在python3.6中调用的话,会出现缺失DLL的错误,如下图:
2. 解决方案
作者提供了ERS算法的C语言源代码,所以基于Python3.6重新编译一下即可。
2.1 安装vs
我安装的是VS2017社区版。
等待安装完成。
2.2 解压boost
安装 boost 1.6.0,高的版本会出问题,有些接口被取消了。
直接下载二进制文件
https://dl.bintray.com/boostorg/release/1.64.0/binaries/
下载 boost_1_64_0-msvc-14.1-64.exe,运行。
我解压到了C:\local\
盘根目录下。
打开vs2017带的开发人员工具。
cd /d C:\local\boost_1_64_0
到boost目录下
执行bootstrap.bat
,目录下会生成bjam.exe和b2.exe两个文件,都可以用于编译boost。
执行b2.exe
开始编译。
编译成功。
2.3 准备python3.6环境
我用的Anaconda,下好了Python3.6的环境
2.4 编译
用VS2017 打开ERS源码中的工程文件
点击【确定】
开始配置包含目录。
配置库目录
点击编译,报错了
把返回值NULL
删掉,再编译。