Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >ModuleNotFoundError:在pipenv中没有名为“dlib”的模块

ModuleNotFoundError:在pipenv中没有名为“dlib”的模块
EN

Stack Overflow用户
提问于 2020-01-31 11:53:09
回答 1查看 3.5K关注 0票数 0

对不起,我对这一切都是新手。我无法在pipenv虚拟环境中安装dlib,但是,我能够在pipenv虚拟env之外安装和导入它。

当我导航到包含我的代码的文件夹并键入pipenv shell,然后键入python3 example.py (这是我想要运行的代码)时,我会得到以下错误:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import dlib
ModuleNotFoundError: No module named 'dlib'

然后,我尝试使用以下命令安装dlib:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ sudo apt-get update
$ sudo apt-get install build-essential cmake
$ sudo apt-get install libopenblas-dev liblapack-dev 
$ sudo apt-get install libx11-dev libgtk-3-dev
$ sudo apt-get install python python-dev python-pip
$ sudo apt-get install python3 python3-dev python3-pip
$ pip3 install dlib

除了最后一个命令之外,所有操作都很好,这是我得到的红色输出:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ pip3 install dlib
Collecting dlib
  Using cached dlib-19.19.0.tar.gz (3.2 MB)
Building wheels for collected packages: dlib
  Building wheel for dlib (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/hany/.local/share/virtualenvs/vesselware-rtITNVcC/bin/python3.5m -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-24bjeekz/dlib/setup.py'"'"'; __file__='"'"'/tmp/pip-install-24bjeekz/dlib/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-3n4hx6v_
       cwd: /tmp/pip-install-24bjeekz/dlib/
  Complete output (292 lines):
  running bdist_wheel
  running build
  running build_py
  package init file 'dlib/__init__.py' not found (or not a regular file)
  warning: build_py: byte-compiling is disabled, skipping.

  running build_ext
  Building extension for Python 3.5.9 (default, Nov 24 2019, 01:35:13)
  Invoking CMake setup: 'cmake /tmp/pip-install-24bjeekz/dlib/tools/python -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/tmp/pip-install-24bjeekz/dlib/build/lib.linux-x86_64-3.5 -DPYTHON_EXECUTABLE=/home/hany/.local/share/virtualenvs/vesselware-rtITNVcC/bin/python3.5m -DCMAKE_BUILD_TYPE=Release'

/tmp/pip-install-24bjeekz/dlib/dlib/external/pybind11/include/pybind11/detail/common.h:111:10: fatal error: Python.h: No such file or directory
     #include <Python.h>
              ^~~~~~~~~~
    compilation terminated.
    CMakeFiles/dlib_python.dir/build.make:134: recipe for target 'CMakeFiles/dlib_python.dir/src/svm_c_trainer.cpp.o' failed
    make[2]: *** [CMakeFiles/dlib_python.dir/src/svm_c_trainer.cpp.o] Error 1
    CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/dlib_python.dir/all' failed
    make[1]: *** [CMakeFiles/dlib_python.dir/all] Error 2
    Makefile:83: recipe for target 'all' failed
    make: *** [all] Error 2
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-24bjeekz/dlib/setup.py", line 261, in <module>
        'Topic :: Software Development',
      File "/home/hany/.local/share/virtualenvs/vesselware-rtITNVcC/lib/python3.5/site-packages/setuptools/__init__.py", line 145, in setup
        return distutils.core.setup(**attrs)
      File "/usr/lib/python3.5/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/usr/lib/python3.5/distutils/dist.py", line 955, in run_commands
        self.run_command(cmd)
      File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/home/hany/.local/share/virtualenvs/vesselware-rtITNVcC/lib/python3.5/site-packages/setuptools/command/install.py", line 61, in run
        return orig.install.run(self)
      File "/usr/lib/python3.5/distutils/command/install.py", line 583, in run
        self.run_command('build')
      File "/usr/lib/python3.5/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/usr/lib/python3.5/distutils/command/build.py", line 135, in run
        self.run_command(cmd_name)
      File "/usr/lib/python3.5/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/tmp/pip-install-24bjeekz/dlib/setup.py", line 135, in run
        self.build_extension(ext)
      File "/tmp/pip-install-24bjeekz/dlib/setup.py", line 175, in build_extension
        subprocess.check_call(cmake_build, cwd=build_folder)
      File "/usr/lib/python3.5/subprocess.py", line 271, in check_call
        raise CalledProcessError(retcode, cmd)
    subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--', '-j4']' returned non-zero exit status 2
    ----------------------------------------
ERROR: Command errored out with exit status 1: /home/hany/.local/share/virtualenvs/vesselware-rtITNVcC/bin/python3.5m -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-24bjeekz/dlib/setup.py'"'"'; __file__='"'"'/tmp/pip-install-24bjeekz/dlib/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-ifngrgm8/install-record.txt --single-version-externally-managed --compile --install-headers /home/hany/.local/share/virtualenvs/vesselware-rtITNVcC/include/site/python3.5/dlib Check the logs for full command output.

当我尝试在虚拟env之外做同样的事情时,一切都很好。

我没有主意了,非常感谢你的建议。

编辑1

我尝试使用conda在pipenv虚拟环境中安装dlib,结果如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Launching subshell in virtual environment…
 . /home/hano/.local/share/virtualenvs/vesselware-rtITNVcC/bin/activate
hano@hano-asus:~/scripts/vesselware$  . /home/hano/.local/share/virtualenvs/vesselware-rtITNVcC/bin/activate
(vesselware) hano@hano-asus:~/scripts/vesselware$ conda install -c menpo dlib
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: | 
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
failed                                                                                                                                                                  

UnsatisfiableError: The following specifications were found                                                                                                             
to be incompatible with the existing python installation in your environment:

Specifications:

  - dlib -> python[version='2.7.*|3.5.*|>=3.5,<3.6.0a0']
  - dlib -> python[version='>=2.7,<2.8.0a0']

Your python: python=3.7

If python is on the left-most side of the chain, that's the version you've asked for.
When python appears to the right, that indicates that the thing on the left is somehow
not available for the python version you are constrained to. Note that conda will not
change your python version to a different minor version unless you explicitly specify
that.

The following specifications were found to be incompatible with each other:



Package certifi conflicts for:
python=3.7 -> pip -> setuptools -> certifi[version='>=2016.09|>=2016.9.26']
dlib -> python=3.5 -> pip -> setuptools -> certifi[version='>=2016.09|>=2016.9.26']
Package wheel conflicts for:
dlib -> python=3.5 -> pip -> wheel
python=3.7 -> pip -> wheel
Package pip conflicts for:
dlib -> python=3.5 -> pip
python=3.7 -> pip
Package ca-certificates conflicts for:
python=3.7 -> openssl[version='>=1.1.1a,<1.1.2a'] -> ca-certificates
dlib -> python=3.5 -> ca-certificates
Package setuptools conflicts for:
python=3.7 -> pip -> setuptools
dlib -> python=3.5 -> pip -> setuptools

编辑2

我确保pipenv使用python3.5(正如您在上面的pip3错误中看到的那样),但我仍然不能通过pip3或conda安装dlib。奇怪的是,conda错误告诉我Your python: python=3.7,而pip3错误清楚地声明我使用python3.5:Building extension for Python 3.5.9

请指点。

EN

回答 1

Stack Overflow用户

发布于 2020-02-05 07:54:25

尝试以下几点:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
conda create --name python3_5 python=3.5
conda activate python3_5
conda install -c menpo dlib
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60010394

复制
相关文章
vue页面加载完毕之后执行
好奇心造就科学家和诗人。——法朗士 当vue页面加载完成后触发 我们在html开发中经常是使用window.onload实现 window.onload = () => { } 但在vue中我们使用this.$nextTick this.$nextTick(() => { console.log("页面加载完啦~") }) 效果如下
阿超
2022/08/16
9.2K0
vue页面加载完毕之后执行
在提取 Docker 映像时解决“未找到清单”错误
如果您尝试拉取 Docker 映像并且它显示未找到清单错误,那么您需要了解如何解决它。
网络技术联盟站
2022/03/21
1.5K0
在提取 Docker 映像时解决“未找到清单”错误
在K8s群集中构建容器映像
了解如何从Kubernetes集群内的Dockerfile构建容器映像源,并将映像推送到IBM Cloud Container Registry; 所有这一切都使用谷歌的Kaniko工具。
February
2018/11/05
1.9K0
当iOS的webView加载Html页面之后
写到webView这块,硬生生堵了好久。现将问题记录如下。 问题一:加载webView之后浏览网页,有时程序会莫名其妙奔溃,查看内存居然高达上百兆。查阅网上资料发现是因为Html里的js 导致的内存泄漏,每次打开一个连接就会把“WebKitCacheModelPreferenceKey”设置成1。 解决方法: 在webView的代理方法中写下如下语句,当然别忘记设置代理。 - (void)webViewDidFinishLoad:(UIWebView *)webView { [[NSUserDefau
谦谦君子修罗刀
2018/05/02
1.4K0
当iOS的webView加载Html页面之后
内存映像文件导出
在测试IO密集型应用程序的时候,当出现内存泄露的时候,往往需要针对这部分进行分析内存泄露的具体原因。常规的一种方式是我们使用JVM的监控工具来监控这部分,来查看堆内存以及非堆内存的实际使用率和过程中应用程序本身的CPU使用率。但是被测试的服务一旦出现内存泄露,该服务就会疯狂的打印内存泄露的日志信息同时客户端请求服务,服务一直处于超时的情况。那么这个时候如JVisualVM的监控也会失去连接,并不能够看到很关键的信息。所以下面详细的阐述下当被测试的服务一旦出现内存泄露的时候,使用自动导出以及命令行导出的方式来获取到内存映像的文件,从而对分析内存泄露提供有利的信息。
无涯WuYa
2022/12/03
1.2K0
内存映像文件导出
计算几何之【映像】
求映像就要先求出p在线段上的投影点pp,然后把p投影点pp的向量放大两倍并与p点坐标相加,那么就求出了点x
灯珑LoGin
2022/10/31
5550
OpenShift的容器映像(第3部分):使你的映像可用
这是我在2017年欧洲、中东和非洲(EMEA)红帽技术交流会议上的一个会议记录,该会议集合了EMEA所有红帽解决方案架构师和顾问。它主要讨论在创建运行于OpenShift上的映像时需要考虑的事项和好的实践(案例)。第三部分重点介绍如何让应用程序开发者或发布管理员更容易地使用映像。
marsggbo
2018/01/10
1.1K0
Docker 映像不安全
Ubuntu:14.04: The image you are pulling has been verified
星哥玩云
2022/07/03
4980
常用js,css文件统一加载方法,并在加载之后调用回调函数
为了方便资源管理和提升工作效率,常用的js和css文件的加载应该放在一个统一文件里面完成,也方便后续的资源维护。所以我用js写了以下方法,存放在“sourceController.js”文件内。 /** * Created by MingChen on 2016/11/3. */ function sourceController() { this.root = ""; this.callfunc = null; // 回调函数 this.css = []; thi
就只是小茗
2018/03/07
3.5K0
Nginx系列之代理之后无法加载静态资源处理方法
最近在跟https域名升级问题,遇到一个麻烦的任务,因为域名由另外的公司负责,对方公司开了一个nginx服务器做了类似的转发
SmileNicky
2020/12/18
6.6K0
(二十二) 解决动态组件切换数据丢失问题和在其他DOM元素挂载组件
在我们日常开发中有些组件是不属于任何容器,他是直接挂在 body 上的,比如父组件使用一个自定义信息提示弹窗
老怪兽
2023/02/22
7510
(二十二) 解决动态组件切换数据丢失问题和在其他DOM元素挂载组件
Flutter swiper在tab切换之后快速循环
我的swiper在首页,在BottomNavigationBar点击切换回来之后,首页的swiper就会快速的循环,然后过一会正常。
yechaoa
2022/06/10
5770
操作系统|程序映像|内存分配
可执行程序看起来好像占据了一个连续的内存块,称为“程序映像”。程序映像有几个不同的分区。程序文本或者代码显示在低位内存中。已初始化和未初始化的静态变量在映像中有自己的分区。其他分区堆,堆栈和环境。
heidsoft
2022/03/14
7760
操作系统|程序映像|内存分配
Linux下c程序的内存映像
今天开始分享C语言里面的存储类型、作用域、生命周期、链接属性等知识点,我们写完一个程序,不只说知其,更要知其所以然。
用户6280468
2022/03/21
3K0
Linux下c程序的内存映像
如何安装 CISCO GNS3 IOS 映像?
在使用GNS3之前,必须将所需的路由器或交换机 GNS3 IOS 映像安装到GNS3,但是许多想要使用 GNS3 进行学习的网络工程师在这第一步中失败了,因此,我们创建了一个指南,将向您展示如何安装 Cisco GNS3 IOS 映像。
网络技术联盟站
2023/03/13
2.6K0
如何安装 CISCO GNS3 IOS 映像?
驱动开发:内核监视LoadImage映像回调
在笔者上一篇文章《驱动开发:内核注册并监控对象回调》介绍了如何运用ObRegisterCallbacks注册进程与线程回调,并通过该回调实现了拦截指定进行运行的效果,本章LyShark将带大家继续探索一个新的回调注册函数,PsSetLoadImageNotifyRoutine常用于注册LoadImage映像监视,当有模块被系统加载时则可以第一时间获取到加载模块信息,需要注意的是该回调函数内无法进行拦截,如需要拦截则需写入返回指令这部分内容将在下一章进行讲解,本章将主要实现对模块的监视功能。
微软技术分享
2022/11/14
4840
驱动开发:内核监视LoadImage映像回调
手把手教你使用JavaScript打造一款扫雷游戏
扫雷大家都玩过,今天我们就是用JavaScript来打造扫雷游戏。废话不多说,直接看下效果;
前端皮皮
2022/08/17
6330
手把手教你使用JavaScript打造一款扫雷游戏
驱动开发:内核枚举LoadImage映像回调
在笔者之前的文章《驱动开发:内核特征码搜索函数封装》中我们封装实现了特征码定位功能,本章将继续使用该功能,本次我们需要枚举内核LoadImage映像回调,在Win64环境下我们可以设置一个LoadImage映像加载通告回调,当有新驱动或者DLL被加载时,回调函数就会被调用从而执行我们自己的回调例程,映像回调也存储在数组里,枚举时从数组中读取值之后,需要进行位运算解密得到地址。
微软技术分享
2022/11/18
7330
驱动开发:内核枚举LoadImage映像回调
在grant语句之后要跟着flush privileges吗?
在 MySQL 里面,grant 语句是用来给用户赋权的。不知道你有没有见过一些操作文档里面提到,grant 之后要马上跟着执行一个 flush privileges 命令,才能使赋权语句生效。我最开始使用 MySQL 的时候,就是照着一个操作文档的说明按照这个顺序操作的。
码农架构
2020/10/26
1.4K0
在grant语句之后要跟着flush privileges吗?
软件测试|解决 App 自动化测试的常见痛点
App 自动化测试中有些常见痛点问题,如果框架不能很好的处理,就可能出现元素定位超时找不到的情况,自动化也就被打断终止了。很容易打消做自动化的热情,导致从入门到放弃。比如下面的两个问题:
霍格沃兹测试开发Muller老师
2023/01/09
5710

相似问题

在延迟加载加载映像之后,如何触发事件?

24

Reactjs如何在加载DOM之后延迟加载映像

23

运行一个函数之后,alertbox已被关闭。

20

如何在api调用之后在多个<img>中加载映像

15

在alertbox调用变量

24
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文