visual studio C++代码调用Python代码

在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 
#include      // 引用一下python的库,检测python环境是否能使用

using namespace std;

int main ()
{
    cout << "Hello World" <

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,放在同一目录下

visual studio C++代码调用Python代码_第1张图片

    3)修改pyconfig.h

// 文件位置
anaconda3/envs/pyName/include/pyconfig.h

    1)注释337行

    2)将python36_d.lib 修改为python36.lib

visual studio C++代码调用Python代码_第2张图片

4. 在VS2019中配置库

配置附加库一般就是include和lib文件夹,这里建议在属性管理器的Microsoft.Cpp.x64.user中做修改,一了百了,以后建立的工程都会自动添加这个库。Nice!

    1)vc++  包含目录

visual studio C++代码调用Python代码_第3张图片

    2)VC++目录 库目录

anaconda3/envs/torch0.4/libs

这些步骤之后,此vs项目应该就能正常debug了。

你可能感兴趣的:(study,c++,python)