源码下载

首先下载caffe2的源码:https://github.com/caffe2/caffe2

网上都建议使用git命令下载,因为caffe2依赖了很多第三方模块,git会根据依赖自动下载第三方依赖模块。但是我在下载过程中发现很多第三方模块的地址变了,因此git方式无法完成第三方模块的下载。因此,下载好caffe2源码后,需要手动完成这些模块的下载。这些模块的默认地址在caffe2/.gitmodules文件内。

Windows下编译安装

编译工程

  在windows下可以编译成VS的工程文件,我用的是VS2017,修改caffe2/scripts/build_windows.bat文件内容如下:

:: #############################################################################
:: Example command to build on Windows.
:: ############################################################################# :: This script shows how one can build a Caffe2 binary for windows. @echo off
setlocal SET ORIGINAL_DIR=%cd%
SET CAFFE2_ROOT=%~dp0%.. if NOT DEFINED CMAKE_BUILD_TYPE (
set CMAKE_BUILD_TYPE=Release
) if NOT DEFINED USE_CUDA (
set USE_CUDA=OFF
) if NOT DEFINED CMAKE_GENERATOR (
if DEFINED APPVEYOR_BUILD_WORKER_IMAGE (
if "%APPVEYOR_BUILD_WORKER_IMAGE%" == "Visual Studio 2017" (
set CMAKE_GENERATOR="Visual Studio 15 2017 Win64"
) else if "%APPVEYOR_BUILD_WORKER_IMAGE%" == "Visual Studio 2015" (
set CMAKE_GENERATOR="Visual Studio 14 2015 Win64"
) else (
echo "You made a programming error: unknown APPVEYOR_BUILD_WORKER_IMAGE:"
echo %APPVEYOR_BUILD_WORKER_IMAGE%
exit /b
)
) else (
:: In default we use win64 VS .
:: Main reason is that currently, cuda does not support VS newest
:: version. To use cuda you will have to use .
set CMAKE_GENERATOR="Visual Studio 15 2017 Win64"
)
) echo CAFFE2_ROOT=%CAFFE2_ROOT%
echo CMAKE_GENERATOR=%CMAKE_GENERATOR%
echo CMAKE_BUILD_TYPE=%CMAKE_BUILD_TYPE% if not exist %CAFFE2_ROOT%\build mkdir %CAFFE2_ROOT%\build
cd %CAFFE2_ROOT%\build :: Set up cmake. We will skip building the test files right now.
:: TODO: enable cuda support.
cmake .. ^
-G%CMAKE_GENERATOR% ^
-DBUILD_TEST=OFF ^
-DCMAKE_BUILD_TYPE=%CMAKE_BUILD_TYPE% ^
-DUSE_CUDA=%USE_CUDA% ^
-DUSE_NNPACK=OFF ^
-DUSE_CUB=OFF ^
-DUSE_GLOG=OFF ^
-DUSE_GFLAGS=OFF ^
-DUSE_LMDB=OFF ^
-DUSE_LEVELDB=OFF ^
-DUSE_ROCKSDB=OFF ^
-DUSE_OPENCV=OFF ^
-DBUILD_SHARED_LIBS=OFF ^
-DBUILD_PYTHON=OFF^
|| goto :label_error :: Actually run the build
cmake --build . --config %CMAKE_BUILD_TYPE% || goto :label_error echo "Caffe2 built successfully"
cd %ORIGINAL_DIR%
endlocal
exit /b :label_error
echo "Caffe2 building failed"
cd %ORIGINAL_DIR%
endlocal
exit /b

然后打开VS2017的开发人员命令提示符,执行“build_windows.bat”即可。

等待一段时间后,便在caffe2/build下生产很多VS的工程文件。

Caffe2的安装

以管理员运行VS2017,并使用VS打开caffe2/build/Caffe2.sln,打开后右键“INSTALL”项目并点击生成,便会执行caffe2库的编译和安装,默认安装目录为C:\Program Files\Caffe2,可以修改caffe2/build/cmake_install.cmake的第5行来更改caffe2的安装路径。

VS下使用caffe2

使用前需要把caffe2/build/lib/Release下的所有库文件拷贝到C:\Program Files\Caffe2\lib(至于什么原因,我也不知道,可能是默认安装的库文件不全)。

新建的工程需要注意以下属性的配置:

(1)包含目录

(2)库目录

(3)附加依赖项

(4)SDL检查

(5)运行库

Linux下的编译和安装

进入caffe2/scripts目录,执行“sh build_local.sh”,然后进入caffe2/build目录,执行"sudo make install"即可。

Caffe2的安装的更多相关文章

  1. Caffe2 Detectron安装错误记录

    caffe2 caffe2的安装方法有几种.其中最方便的是conda install.但是要求必须安装Anaconda. conda install -c caffe2 caffe2-cuda8.0- ...

  2. ubuntu 16.04 安装caffe2的方法及问题解决

    工作需要安装caffe2,从用户体验上来讲,caffe2的安装绝对是体验比较差的那种,花费了我那么多时间去倒腾,这样的用户体验的产品,估计后面是比较危险的. 废话少说,直接上步骤: 官网上有安装目录, ...

  3. Caffe2(1)----Ubantu14.04安装

    英文好的请直接参考官方安装文档:Ubantu14.04下的源码编译. Caffe2的安装相比以前Caffe一代的安装,简直有点一键装机的感觉,下面简单总结下Caffe2的安装. 环境:Ubantu14 ...

  4. (译)综合指南:通过Ubuntu 16.04上从Source构建来安装支持GPU的Caffe2

    (译)综合指南:通过Ubuntu 16.04上从Source构建来安装支持GPU的Caffe2 译者注: 原文来自:https://tech.amikelive.com/node-706/compre ...

  5. caffe2+cuda+Ubuntu16.04(u盘安装)

    安装caffe2 预先准备.安装gflags及autoconf及GLOG https://github.com/caffe2/caffe2/issues/1810 一.下载源代码通过网盘 https: ...

  6. caffe2 环境的搭建以及detectron的配置

    caffe2 环境的搭建以及detectron的配置 建议大家看一下这篇博客https://tech.amikelive.com/node-706/comprehensive-guide-instal ...

  7. CNN:Windows下编译使用Caffe和Caffe2

    用于检测的CNN分为基于回归网络的方法和基于区域+CNN网络的方法,其中基于回归网络的方法典型为YOLO9000,可以兼容使用VGG-Net框架.其中基于区域+CNN网络方法,大量使用了Caffe作为 ...

  8. ubuntu16.04 Detectron目标检测库配置(包含GPU驱动,Cuda,Caffee2等配置梳理)

    Detectron概述 Detectron是Facebook FAIR开源了的一个目标检测(Object Detection)平台. 用一幅图简单说明下Object Detection.如Mask R ...

  9. Pytorch实现的语义分割器

    使用Detectron预训练权重输出 *e2e_mask_rcnn-R-101-FPN_2x* 的示例 从Detectron输出的相关示例 使用Detectron预训练权重输出 *e2e_keypoi ...

随机推荐

  1. jsp 一点点

    jsp学习 jsp -处理 作为正常的页面,你的浏览器发送一个http请求道web服务器. web 服务器承认一个JSP页面的HTTP请求,并将其转发给一个JSP引擎. JSP引擎从磁盘加载JSP页面 ...

  2. SpringMVC 常用applicationContext.xml、web.xml、servlet-mvc.xml简单配置

    在进行学习配置文件之前,为了加深对框架的认识,简单的做了SSM框架的简单实验.然后画出listAll查询方法的整个过程的思维导图. 整个过程中的web.xml.SpringMVC.xml.applic ...

  3. Java中关于LockSupport的简单入门记录

    LockSupport的JDK的文档描述:Basic thread blocking primitives for creating locks and other synchronization c ...

  4. JS进阶之---函数,立即执行函数

    一.函数 函数声明.函数表达式.匿名函数 函数声明:使用function关键字声明一个函数,再指定一个函数名,叫函数声明.function name () { … } 函数表达式:使用function ...

  5. Vue.js项目脚手架构建

    vue.js文档:https://cn.vuejs.org/v2/guide/ 参考这个或者参考菜鸟教程也可以,不过还是那句话官网权威. 我这个主要是看相关的学习视频搭建的. 一.环境准备 环境准备( ...

  6. sd错误---2

    一道水题 绊了我,居然 愿意很简单 我多打了一遍int main 阴错阳差的 自定义的函数上面 出现了int main 所以 以后想想好思路(是那种很全很全的思路) 再写代码 一定要避免sd错误!!! ...

  7. 蒟蒻qxt的sd'日常

    emm... 今天刷了一道水题 居然 死循环了 真的是水题啊 顿时自闭 (救救孩子吧) 结果 bug是 我把for循环中的i的值改变了 使得i的值一直都不会达到他的边界值 于是就死循环了 所以 要用到 ...

  8. AI 随机梯度下降(SGD)

    随机梯度下降(stochastic gradient descent) 梯度是期望 计算梯度耗时太长

  9. statefulSet 原理理解

    1.  svc(vip)                       --              deployment 2.headless(none)                --     ...

  10. 3.《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——检查文件

    上面我们已经学过如何创建及操作文件,现在我们再来学习检查内容.当文件太长以至于屏幕一页显示不完时,这显得尤其重要.特殊情形下,如我们在第2.1章节开始部分中使用cat命令将内容展示到屏幕上,但这对于长 ...