Windows运维之windows编译caffe2遇到的问题
小标 2018-09-25 来源 : 阅读 2353 评论 0

摘要:本文主要向大家介绍了Windows运维之windows编译caffe2遇到的问题,通过具体的内容向大家展现,希望对大家学习Windows运维有所帮助。

本文主要向大家介绍了Windows运维之windows编译caffe2遇到的问题,通过具体的内容向大家展现,希望对大家学习Windows运维有所帮助。

首先介绍下window编译caffe2整体流程:
说明:如果不需要python支持只需3、4即可,而且编译亦不会出现问题。
1. 安装python2.7,。
我使用的是anaconda python2.7环境,要将python路径添加到系统路径(PYTH)。

 
2.python一些必要库的安装,如numpy、pybind11(是否必须未验证??)
  具体其他依赖库参见网址:
  https://caffe2.ai/docs/getting-started.html?platform=windows&configuration=compile
  我安装的库:  
  pip install future hypothesis numpy protobuf six  pip install flask glog graphviz jupyter matplotlib pydot python-nvd3 pyyaml requests scikit-image scipy setuptools tornado
  pip install pybind11
3. 运行找到下载好的caffe2\scripts\build_host_protoc.sh
4.运行caffe2\scripts\build_windows.bat
此时要注意:
如果需要python支持需要将“-DBUILD_PYTHON=OFF^”设置为“-DBUILD_PYTHON=ON^”
如果为OFF大家可以放心编译,设置为ON后会遇到下面描述的问题。
 
遇到问题及解决方法:
1. 问题找不到numpy,确定python中已经安装
类似:Could NOT find NumPy (missing: NUMPY_INCLUDE_DIR NUMPY_VERSION) 错误。
解决方法:
这时将以前的numpy删除,重新安装numpy即可解决问题。
删除: pip uninstall numpy    
安装:pip install nump
 
2.问题:
CMake summary output
I am installing caffe2 on win10 and it takes me almost a whole day. There are many missing argvs and errors in build_windows.bat. I doubt that the script has not been tested before.Now I have another problem afer executing build_windows.bat:ERROR Failed to remove indentation from:"""
  from distutils import sysconfig
  print(sysconfig.get_python_lib(prefix=‘‘))

"""Python dedent failed with error code: 系统找不到指定的文件。(system can not find specified file)CMake Error at cmake/Utils.cmake:177 (message):Python dedent failed with error code: 系统找不到指定的文件。(system can not find specified file)Call Stack (most recent call first):cmake/Utils.cmake:200 (dedent)caffe2/CMakeLists.txt:145 (pycmd)
解决方法:
修改cmake/Utils.cmake文件,这个问题估计再更新的caffe2就会没有了。
参见网址:https://github.com/pytorch/pytorch/pull/6296/commits/88ae3f4c4feb50532b64b2f5d1110a7c2e81ceb6
 
3. 问题无法连接python27.lib
“X:\caffe2\build\ALL_BUILD.vcxproj”(默认目标) (1) ->
“X:\caffe2\build\caffe2\caffe2_pybind11_state.vcxproj”(默认目标) (8) ->
(Link 目标) ->
  LINK : fatal error LNK1104: cannot open “python27.lib” [X:\caffe2\build\caffe2\caffe2_pybind11_state.vcxproj]解决方法:打开Caffe2.sln,然后安装图中操作:然后就可以通过VS编译一下Caffe2,至此Caffe2编译完成。编译完后将caffe2_pybind11_state.pyd拷贝都python的DLLs目录例如:XXX\Anaconda2\DLLs4. python使用:import caffe2。但是会报no module的错。
>>> import caffe2Traceback (most recent call last):  File "", line 1, in ImportError: No module named caffe2
解决方案(1):
>>> import sys>>> sys.path.append("X:/XXXX/caffe2/build")>>> import caffe2>>> import caffe2.python
解决方案(2):
参考网址:https://www.cnblogs.com/shanql/articles/5477483.html
windows下:找到python安装环境中的site-packages文件夹:
新建mypkpath.pth(注:必须以.pth为后缀),然后在文件中将X:/XXXX/caffe2/build写入保存即可。
 
这样的做法目的应该是类似C、C++将头文件告诉python,运行时python再找对应的dll。

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注系统运维windows频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved