--如果是自己编译的python ,记得_d版本是不支持的,只能用release ,如果要调试,就禁用优化,调试release
1:设置好python环境变量,在path中
2 :bootstrap.bat
3:b2 toolset=msvc-14.0 --with-python link=shared threading=multi runtime-link=shared address-model=64 stage --stagedir="D:/boost_1_69_0/lib" debug release
4如果缺少pyconfig,就复制到python/include目录 ,如果找不到python38.lib 就复制到python根目
5如果多次执行切换python版本,记得删除bin.v2目录
6 pyconfig 里面修改红 Py_Debug ,注释掉,解决链接失败问题
7 执行boost.numpy用cmake一直失败,直接找到numpy的src目录进入,看到cmakelist文件后,直接cmake -S "源目录" -B "生成目录",如果切换编译win32 /Win64 版本,记得先删除之前生成的build目录
8 如果找不到 arrayobject.h,可以在pip 中安装 numpy
9 D:\boost_1_79_0放在包含目录的头部,解决定义冲突问题,如果存在不网上下载的boost_numpy和boost的不兼容,只做了简单的代码修改,去掉了const,就解决了
10 最终把boost_numpy编译出来还是在boost_1_67_0-msvc-14.0-64.exe 中的--with-python选项编译出来的,其中numpy的几个hpp 和 cpp 分别被提前了一个目录放在和python同一级下
错误测试:
1 bootstrap.bat --with-python=python3 --with-python-root=D:/Python-3.6.7/ --with-python-version=3.6
2 自建 user-config