1. 环境:Windows7,Cuda8.0,显卡GTX1080,Matlab2016a,VS2013

(ps:老板说服务器要装windows系统,没办法,又要折腾一番,在VS下编译好像在cuda8.0情况下会报各种错,只能参照官网新的编译方式来,

原来的VS编译方式也将被官网弃用)

2.下载caffe 包:https://github.com/BVLC/caffe/tree/windows

按照Github上的命令行就行:

这里的Projects是自己在本地新建的文件夹,随便放在哪里,如果git没有安装的话,先安装git,百度git即可。

执行前3个命令之后,就把caffe包下载下来了。

在运行build_win.cmd之前,需要修改几个地方:

a. 如果是VS2013,则要将MSVC_VERSION=14修改为12

b. 这里我编译的是matlab接口,将BUILD_MATLAB=0修改为1,

不需要编译Python接口,因此将BUILD_PYTHON修改为0,BUILD_PYTHON_LAYER修改为0。

c. 目前下载的caffe包是无法编译matlab接口的,需要修改3个文件,详细参考下面的连接:

https://github.com/BVLC/caffe/pull/4928/commits/a5e7b32f1cdbfe05a6bb3037a86409975a8b6a7b

直接把文件复制过来替换即可。

3.当最后运行scripts\build_win.cmd时,会出现一些错误,下面主要分析一下解决方法:

(1)因为scripts文件夹下有个下载依赖库的.py文件,需要python环境来运行,因此,

还要安装Python,2.7的版本即可,配置系统环境变量。再次运行,然后还会提示找不到module six yaml啥的,这些都是需要python来引入的模块,百度一下, 通过easy_install.py来安装即可。

(2)Cmake,最重要的编译环境,下载3.4版本,安装即可,配置系统环境变量。

(3)编译matlab接口需要本地mex工具,需要配置matlab环境变量。

4.  运行后会下载依赖库,在本地会生成一个build文件夹,下载过程比较慢,耐心等待即可。

a. 如果下到一半报错,当重新运行build_win.cmd时,会提示你先要删除build文件夹,删除即可。

b. 倘若已经下载完毕依赖的包,为了避免重新下载,首先要将build_win.cmd里面的 判断build文件夹是否存在的代码注释掉,

然后打开 下载依赖库的.py文件,将里面的其中一行下载依赖包的代码注释,但是需要将依赖包路径修改为本地存放的路径(因为代码中会解析该依赖         包,修改的路径变量是dep_filename,直接将该变量替换为本地路径即可),这样重复编译,就不会重新下载包了。

5. 编译过程较长,完成之后,在caffe\tools\Release目录下, 有各种可执行文件,但是运行会报错,缺少各种dll文件,

需要去其他文件夹里找相应的dll文件,复制到Release目录下即可。

matlab接口编译完,是在caffe\matlab\+caffe\private\Release目录下,存在caffe_mexw64文件。

测试的话,要将caffe\matlab设置为Matlab的搜索路径,caffe_mexw64文件要自己复制到当前工作目录下。

caffe 在window下编译(windows7, cuda8.0,matlab接口编译)的更多相关文章

  1. caffe在windows 下的配置及matlab接口编译(无GPU)

    本人机子windows 10,matlab2015a,vs2013(官网使用的是vs2013) 1.首先去github上下载caffe的windows包,地址:https://github.com/B ...

  2. caffe matlab接口编译遇到的问题记录

    今天编译的过程中遇到的问题以及查阅到的资料,记录在这里,希望可以帮到其他人. BVLC的caffe源码,如果要编译matlab的接口时,首先需要将makefile.config文件中的matlab的安 ...

  3. VC2008下使用OpenSSL 1.0.0g(免编译)

    OpenSSL整个软件包大概可以分成三个主要的功能部分:密码算法库.SSL协议库以及应用程序. 官网:http://www.openssl.org/OpenSSL for Windows:http:/ ...

  4. Caffe on Windows (Visual Studio 2015+CUDA8.0+cuDNNv5)

    Title : Caffe (Visual Studio15+CUDA8+cuDNN5+python3.5) Author : SURFZJY Logo : True [TITLE] Requirem ...

  5. utuntu16.04安装caffe+Matlab2017a+opencv3.1+CUDA8.0+cudnn6.0

    上午把tensorflow安装好了,下午和晚上装caffe的确很费劲. 默认CUDA,cuDNN可以用了 caffe官方安装教程 有些安装顺序自己也不清楚,简直就是碰运气 1. 安装之前依赖项 Gen ...

  6. win7下编译Microsoft版的caffe包的MATLAB接口(CPU模式)

    本博客是基于http://www.cnblogs.com/njust-ycc/p/5776286.html这篇博客修改的,做出了更正与补充. 本人机器的环境:Win7+MATLAB2014b+VS20 ...

  7. faster-rcnn CUDA8.0编译错误

    之前编译Faster-RCNN的时候用的都是CUDA7.5,最近换了机器,变成了CUDA8.0,果然编译出现错误了…… 参考下面这篇博客解决了问题: http://blog.csdn.net/kexi ...

  8. Windows8.1 + Nvidia cuda8.0 + Vs2015

    操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Vs2015 1.查看本机配置,查看显卡类型是否支持NVIDIA GPU选中计算机-->右键属性-->设备管理 ...

  9. windows下caffe安装配置、matlab接口

    一.CommonSettings.props caffe下载后解压.源代码文件夹caffe-master,到该文件夹下的windows文件夹下,将CommonSettings.props.exampl ...

随机推荐

  1. 一次疏忽导致的bug

    NBB_PUT_SHORT 这个宏是按char* 类型算指针的实际工作中,没有注意这一点,输入指针类型 强转为了 SHORT* 导致 填充的内容错误 这是第一次在工作中遇到 指针类型相关的问题值得记录 ...

  2. Linux cp命令使用说明

    Linux cp命令使用说明 --功能说明:复制目录或文件 --命令格式:cp  [参数]  <文件或目录>  <文件或目录> --常用参数: -R 复制目录 -i 覆盖文件之 ...

  3. EXCEL拼接SQL

    =CONCATENATE("insert into 表名 (字段名1,字段名2)values (3,  '"&C3&"');") 用CONCAT ...

  4. draw: Could not use program error=0x505

    原因:Android的模拟器在ADT中调试运行AVD时速度太慢.也就是说创建的虚拟手机配置太好,电脑带不动. 解决办法:从新创建虚拟手机,是手机配置低一点,具体创建方法如下: 开始先点运行,也就是下图 ...

  5. 前端自动构建工具@gulp入门

    gulp是一个自动化的前端工具.它可以利用自身的插件来实现一些功能,如sass.less编译:浏览器自动刷新,文件压缩.重命名.代码校验(个人使用sublime的插件进行校验)等功能.当然这些功能也可 ...

  6. lphp输出控制output controll(header, ob_xxx)

    关于php的output controll参考文档: http://gywbd.github.io/posts/2015/1/php-output-buffer-in-deep.html http:/ ...

  7. poj1014(还需要改动)

    #include <stdio.h> int n[6]; int main() { freopen("in.txt","r",stdin); int ...

  8. linux 定时清理session

    php session 运营想让用户登陆网站就能永久保持登陆会话,感觉这是扯淡,因为视频播放1小时,所以我设置了两小时过期. 但是用户过多,导致session文件大量存储.产生上百万千万.服务器空间很 ...

  9. [WPF]建立自适应窗口大小布局的WinForm窗口

    编写WinForm程序时,都会碰到一个问题.就是WinForm窗口在不同分辨率下的大小问题.举例说明,你编写的WinForm窗口在1024×768下是合适.匀称的.不过,如果用户的计算机的分辨率为14 ...

  10. Python 第五天 模块(2)

    模块,用一砣代码实现了某个功能的代码集合. 有两种存在的方式 1.写到一个文件夹里面 2.py文件 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和 ...