在c、c++项目中有时会需要调用python的代码,在windows下使用visual studio进行调试时,需要进行库的配置,这里记录下配置的流程。使用的python环境为anaconda下创建的虚拟环境——pyName。
1. 虚拟环境的创建【optional】
与直接从python官网下载源码编译相比,anaconda对python的管理更加elegant,虚拟环境也可以避免不同项目间环境的污染。此步骤是可选步骤,但是我建议各位使用虚拟环境进行管理。
conda create -n pyName python=3.6
conda activate pyName (activate the env and install pkgs)
conda install *** (Any pkgs you want)
2. 创建一个vs工程
#include <iostream>
#include <Python.h> // 引用一下python的库,检测python环境是否能使用
using namespace std;
int main ()
{
cout << "Hello World" <<endl;
return 0;
}
3. python36_d.lib
使用anaconda安装的conda一般不会有python36_d.lib,因为安装的过程中没有编译。在VS中进行debug时没有这个lib会报错,解决方案如下。
1)首先在自己的conda虚拟环境中找到python36.lib,一般是在如下的地址,注意是自己的虚拟环境下。
anaconda3/envs/pyName/libs/python36.lib
2)拷贝python36.lib重命名为python36_d.lib,放在同一目录下
3)修改pyconfig.h
// 文件位置
anaconda3/envs/pyName/include/pyconfig.h
1)注释337行
2)将python36_d.lib 修改为python36.lib
4. 在VS2019中配置库
配置附加库一般就是include和lib文件夹,这里建议在属性管理器的Microsoft.Cpp.x64.user中做修改,一了百了,以后建立的工程都会自动添加这个库。Nice!
1)vc++ 包含目录
2)VC++目录 库目录
anaconda3/envs/torch0.4/libs
这些步骤之后,此vs项目应该就能正常debug了。