参考链接:
深度学习文章1:Caffe安装教程:Ubuntu16.04(CPU)

环境

系统:Ubuntu 18.04
python版本:3.6.9,来自pycharm基于系统python3自建的虚拟环境
显卡:NVIDIA 2080Ti * 2
cuda:10.0

结果

能够在python中正确import python:

流程

  1. 从github上直接git caffe repo下来到任意文件夹,解压
  2. 在pycharm中打开caffe文件夹,建立不含杂质的虚拟环境(也可以用conda建立,在pycharm中导入)
  3. 先安装caffe/python/requirement.txt中要求的库
    会产生库冲突,在这里我将txt中的python-dateutil>=1.4,<2去掉了,换成了python-dateutil==2.7.3的版本
  4. 根据参考链接里的步骤走,直到修改文件的步骤:sudo gedit Makefile.config。修改该文件非常重要,需要从头至尾看一遍该文件,根据自身情况进行修改。这个是没办法抄作业的,每个人的电脑配置和环境配置都不一样。
  5. 修改完Makefile.config文件后,继续按照参考链接里的步骤走,直到正确编译pycaffe接口,能够在终端导出上面的模块为止

个人Makefile.config修改参考

一般默认有gpu,以及一些其他依赖库,如果make过程中报找不到文件,应该是缺少依赖,根据报的错误百度,安装相关依赖就行

CUDA_ARCH


我的配置是两块2080Ti,cuda版本为10.0(其他cuda版本应该也可以),主要是算力和架构需要匹配。图片上有根据cuda版本来修改CUDA_ARCH参数的帮助。这里我去掉了20和21这一行

PYTHON_INCLUDE


使用了系统自带的python2.7解释器环境。这个是因为需要一些python的必要文件,并不是指定在哪个python中编译caffe。
由于我也安装了anaconda3,所以下面把anaconda的注释也取消了,见下步。

ANACONDA_HOME & PYTHON_INCLUDE


这里anaconda的路径一定是anaconda安装过程中指定的安装路径。源文件中使用了anaconda,而我下载了anaconda3的版本,所以把anaconda修改成了图片中的anaconda3

PYTHON_INCLUDE(3 ver.)


这里使用了系统自带的python3的相关文件。源文件里应该是python3.5,我根据自己的系统,将python3.5改成自己系统/usr/include目录下的python3.6。

其他的就没做修改了,基本修改完这些,也正确安装了依赖,是能正确编译import caffe的。

「Caffe」python版本caffe编译相关推荐

  1. Caffe: Faster-RCNN Python版本配置 (Windows)

    环境:VS2013,CUDA8.0,CuDNN 5.0,Win10/7,Anaconda 一.准备工作 1. 添加VS的cl.exe所在路径至环境变量 VS的安装路径下有一个VC文件夹,将其中的bin ...

  2. 由Python历史「解密」Python底层逻辑

    一次纯粹的hacking Python的作者,Guido von Rossum,荷兰人.1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位.尽管,他算得上是一位数学家,但他更加享受计算机 ...

  3. 「11」Python实战篇:利用KNN进行电影分类

    上一期文章:「10」民主投票法--KNN的秘密 中,我们剖析了KNN算法的本质和特点.局限.这里我们用python代码进行KNN的实现.第1部分是KNN的基础算法步骤,第2部分是一个电影分类的实战项目 ...

  4. python 字节流分段_由Python历史「解密」Python底层逻辑

    一次纯粹的hacking Python的作者,Guido von Rossum,荷兰人.1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位.尽管,他算得上是一位数学家,但他更加享受计算机 ...

  5. python底层与机器底层关系_由Python历史「解密」Python底层逻辑

    一次纯粹的hacking Python的作者,Guido von Rossum,荷兰人.1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位.尽管,他算得上是一位数学家,但他更加享受计算机 ...

  6. python 中主线程结束 子线程还在运行么_「干货」python线程笔记

    引言&动机 考虑一下这个场景,我们有10000条数据需要处理,处理每条数据需要花费1秒,但读取数据只需要0.1秒,每条数据互不干扰.该如何执行才能花费时间最短呢? 在多线程(MT)编程出现之前 ...

  7. python之禅中文-「翻译」Python之禅

    Python之禅 Beautiful is better than ugly. 优美胜于丑陋. Explicit is better than implicit. 明了(显式)比隐晦(隐式)好. Si ...

  8. python字符串split_「干货」Python字符串中的split方法

    前面的文章我们有简单的介绍过什么是字符串.Python字符串的输入方式.Python字符串的拼接方法等今天我们主要分享一下Python字符串中split方法! Python字符串中的方法有很多种,其中 ...

  9. python读文件去除空行_「34」Python文件操作经典案例:CSV文件的读与写

    [1]认识CSV文件 CSV是Comma Separated Values的缩写,它是逗号分隔符文本格式,常用于数据交换.Excel文件和数据库数据的导入和导出. 鉴于CSV的应用场景,编程人员与它打 ...

最新文章

  1. python基础课程第12章,Python基础教程学习笔记 | 第12章 | 图形用户界面
  2. CPU和软件模拟异常的执行流程
  3. java uuid 排序_如何在java中将UUID保存为二进制(16)
  4. vue-cli 上手
  5. Dubbo源码分析系列-Dubbo的动态编译原理
  6. 统一操作系统 UOS 官网正式上线;旷视回应“戴口罩人脸识别”;IntelliJ IDEA 2019.3.3 发布 | 极客头条...
  7. 《Linux内核设计与实现》读书笔记 第一章 Linux内核简介
  8. 人机交互,情感计算,,人工智能相关研究的科研团队
  9. 【云安全课程】云平台使用安全
  10. 《Java性能优化权威指南》读书笔记
  11. tcpclient java_以TcpClient接收消息
  12. r矢量球坐标系旋度_球坐标系中的矢量算符
  13. 计算机单位 字节,字节是什么意思?字节是什么单位
  14. java微信获取素材列表_微信公众号开发之获取素材列表并保存
  15. UE4 如何解决摄像头移动毛边问题
  16. oracle 表数据删除后恢复还原
  17. 计算机内存满了 可是硬盘空的,为什么计算机内存不足
  18. 腾讯企业邮箱不能发送短信认证
  19. linux 下 `dirname $0`
  20. 图像控制点 形变_基于控制点的图像变形方法的研究与实现

热门文章

  1. android动画帧率_Android动画进阶—使用开源动画库nineoldandroids
  2. 兴义高考八中2021成绩查询,兴义第八中学2021年录取分数线
  3. 电气:电能扰动质量数据集模拟生成(matlab)
  4. Redis 数据结构之哈希表
  5. Linux 进阶笔记(二)
  6. wxWidgets:常用对话框
  7. boost::mpl::less相关的测试程序
  8. boost::mp11::mp_flatten相关用法的测试程序
  9. boost::log::sinks::unlocked_sink用法的测试程序
  10. boost::hana::fold_right用法的测试程序