安装与编译Dlib(以Ubuntu16.04+Python3.6+pip为例)

Step1:下载Ubuntu (or Linux)系统支持库=>Install OS libraries

sudo apt-get install build-essential cmake pkg-config libx11-dev libatlas-base-dev libgtk--dev libboost-python-dev

Step 2:安装与Python版本一致的相关库=>Install Python libraries

sudo apt-get install python3.-dev python3-pip 

(注意:这里的python3.6-dev对应的是Python3.6这个版本)

Step3:编译并安装Dlib=>Compile Dlib

0)准备工作,去官网下载源码:http://dlib.net/files/

1) C++编译(Compile C++ binary)

wget http://dlib.net/files/dlib-19.16.tar.bz2
(如果已经下载源码,这一步不需要。)
tarxvf dlib-19.16.tar.bz2
cd dlib-19.16/
mkdir build
cd build
cmake ..
cmake --build . --config Release
sudo make install
sudo ldconfig
cd..

2) Python编译(Compile Python module)

本质来说,就是C++编译基础上添加Python调用模块。
这种方法较多,常见以下几种:

a.直接pip编译安装:

sudo pip install dlib==19.16
或者
sudo pip3 install dlib==19.16

b.进入dlib的目录用setup.py文件方式编译安装:

# move to dlib's root directory
cd dlib-19.16
sudo python setup.py install # clean up(this step is required if you want to build dlib for both Python2 and Python3)
rm -rf dist
rm -rf tool/python/build
rm python_examples/dlib.so

题外知识:apt-get的使用

1、更新软件数据库:sudo apt-get update
2、查找你想要的软件:sudo apt-cache search softwareName
3、从查找的结果中找到你想安装的软件,然后:sudo apt-get install softwareNameYouFound
备注:斜体字为命令的参数,需要根据用户需要安装的软件名称而改变。
---------------------------------------------------------
可以用命令:sudo apt-cache -h来得到更多信息。
---------------------------------------------------------
例如:我想安装eclipse,但我不知道是否能通过apt-get命令来安装,如下操作:
1、sudo apt-get update.
2、sudo apt-cache search eclipse这时,可以看到有
3、这时可以用以下命令安装eclipse:sudo apt-get install eclipse

安装与编译Dlib(以Ubuntu16.04+Python3.6+pip为例)的更多相关文章

  1. ubuntu16.04 python3 安装selenium及环境配置

    环境 ubuntu16.04 python3 安装selenium sudo pip3 install seleium 默认安装完是支持firefox,但是更新得太慢对于较新的firefox已经不支持 ...

  2. 在ubuntu16.04+python3.5情况下安装nltk,以及gensim时pip3安装不成功的解决办法

    在ubuntu16.04+python3.5情况下安装nltk,以及gensim时pip3安装不成功的解决办法,我刚开始因为不太会用linux命令,所以一直依赖于python 的pip命令,可是怎么都 ...

  3. 深度学习环境搭建:Tensorflow1.4.0+Ubuntu16.04+Python3.5+Cuda8.0+Cudnn6.0

    目录 深度学习环境搭建:Tensorflow1.4.0+Ubuntu16.04+Python3.5+Cuda8.0+Cudnn6.0 Reference 硬件说明: 软件准备: 1. 安装Ubuntu ...

  4. MySql5.7免安装版配置过程(ubuntu16.04)

    MySql5.7免安装版配置过程(ubuntu16.04) 原创 2017年02月07日 16:58:24 标签: 1001 编辑 删除 一.安装环境: 操作系统:ubuntu16.04 数据库:my ...

  5. ubuntu16.04 python3.5 opencv的安装与卸载(转载)

    转载https://blog.csdn.net/qq_37541097/article/details/79045595 Ubuntu16.04 自带python2.7和python3.5两个版本,默 ...

  6. 【软件安装与环境配置】ubuntu16.04+caffe+nvidia+CUDA+cuDNN安装配置

    前言 博主想使用caffe框架进行深度学习相关网络的训练和测试,刚开始做,特此记录学习过程. 环境配置方面,博主以为最容易卡壳的是GPU的NVIDIA驱动的安装和CUDA的安装,前者尝试的都要吐了,可 ...

  7. Ubuntu16.04 python3.4.3升级到python3.7.1

    python有两个版本,一个2版本,使用的是python:另一个是3版本,使用的是python3. 简易安装python后得到的3版本的版本号是python3.4.3. 可以使用下面的命令查看py版本 ...

  8. Akka-CQRS(2)- 安装部署cassandra cluster,ubuntu-16.04.1-LTS and MacOS mojave

    对于akka-cluster这样的分布式软件系统来说,选择配套的数据库类型也是比较讲究的,最好也是分布式的,如cassandra,能保证良好的HA特性.前面的例子里示范akka-persistence ...

  9. 在使用ubuntu16.04+python3.5 下使用pip3出现pip3 error - '_NamespacePath' object has no attribute 'sort'

    使用pip3安装tensorflow以及gensim等时,出现如下错误: Traceback (most recent call last): File "/usr/local/bin/pi ...

随机推荐

  1. 在Google Maps 上点击标签显示说明并保持不消失

    JS如下: (function() {     window.onload = function() {         // Creating an object literal containin ...

  2. MFC 画笔CPen、画刷CBrush

    新建单个文档的MFC应用程序,类视图——View项的属性——消息,WM_PAINT,创建OnPaint()函数 dc默认有一个画笔(实心1像素宽黑线). CPen画笔非实心线像素宽必须为1,否则膨胀接 ...

  3. 头条编程题 万万没想到之抓捕孔连顺 JavaScript

    [编程题] 万万没想到之抓捕孔连顺 时间限制:1秒 空间限制:131072K 我叫王大锤,是一名特工.我刚刚接到任务:在字节跳动大街进行埋伏,抓捕恐怖分子孔连顺.和我一起行动的还有另外两名特工,我提议 ...

  4. luogu P1494 [国家集训队]小Z的袜子 ( 普 通 )

    题目:    链接:https://www.luogu.org/problemnew/show/P1494 题意:一些袜子排成一排,每个袜子有固定的颜色.                        ...

  5. Python实用黑科技——解包元素(2)

    需求: 前面的文章讲的是使用变量的个数需要和迭代器数据变量的元素个数相同的方法,但更多的时候确实不想根据元素个数n来定义相应多的变量,而是希望用较少的变量( def drop_first_last(g ...

  6. JavaWeb_(Spring框架)在Struts+Hibernate框架中引入Spring框架

    spring的功能:简单来说就是帮我们new对象,什么时候new对象好,什么时候销毁对象. 在MySQL中添加spring数据库,添加user表,并添加一条用户数据 使用struts + hibern ...

  7. ARTS打卡计划第十五周

    Algorithms: https://leetcode-cn.com/problems/single-number/submissions/ Review: “What Makes a Good D ...

  8. shell 从键盘读取输入时删除输入的字符

    [参考文章]:stty命令的用法全解 [参考文章]:shell——read时退格异常(shell修改删除符) stty srase ^h read  -p  "请输入参数信息" 在 ...

  9. Netfilter 之 iptable_mangle

    初始化 iptable_mangle_table_init函数通过调用ipt_register_table完成mangle表注册和钩子函数注册的功能:该流程与iptable_filter的函数调用的函 ...

  10. XGBoost原理简介

    XGBoost是GBDT的改进和重要实现,主要在于: 提出稀疏感知(sparsity-aware)算法. 加权分位数快速近似学习算法. 缓存访问模式,数据压缩和分片上的实现上的改进. 加入了Shrin ...