无法在 Windows 10 和 Python 3.7 上安装 dlib

DJc*_*ode 5 opencv python-3.x windows-10 visual-studio-2015 dlib

我正在尝试在 Windows 10 上的 Anaconda Python\xc2\xa03.7 上安装 OpenCV、dlib。

\n

我已经安装了 Visual studio 2015 作为先决条件以及 CMake。当我尝试在计算机上安装 dlib 时,出现以下错误。我也无法安装OpenCV。我尝试使用 .whl 文件安装 dlib。但是,仍然没有运气。

\n
Collecting dlib\n  Using cached https://files.pythonhosted.org/packages/1e/62/aacb236d21fbd08148b1d517d58a9d80ea31bdcd386d26f21f8b23b1eb28/dlib-19.18.0.tar.gz\nBuilding wheels for collected packages: dlib\n  Building wheel for dlib (setup.py) ... error\n  ERROR: Command errored out with exit status 1:\n   command: \'C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\python.exe\' -u -c \'import sys, setuptools, tokenize; sys.argv[0] = \'"\'"\'C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\dlib\\\\setup.py\'"\'"\'; __file__=\'"\'"\'C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\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 \'C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-wheel-2nm313mu\' --python-tag cp37\n       cwd: C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\\n  Complete output (73 lines):\n  running bdist_wheel\n  running build\n  running build_py\n  package init file \'dlib\\__init__.py\' not found (or not a regular file)\n  running build_ext\n  Building extension for Python 3.7.4 (default, Aug  9 2019, 18:34:13) [MSC v.1915 64 bit (AMD64)]\n  Invoking CMake setup: \'cmake C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\tools\\python -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\lib.win-amd64-3.7 -DPYTHON_EXECUTABLE=C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\python.exe -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\lib.win-amd64-3.7 -A x64\'\n  -- Building for: Visual Studio 14 2015\n  -- Selecting Windows SDK version  to target Windows 10.0.17763.\n  CMake Error at CMakeLists.txt:3 (project):\n    Failed to run MSBuild command:\n\n      C:/Program Files (x86)/MSBuild/14.0/bin/MSBuild.exe\n\n    to get the value of VCTargetsPath:\n\n      Microsoft (R) Build Engine version 14.0.25420.1\n      Copyright (C) Microsoft Corporation. All rights reserved.\n\n      Build started 10/23/2019 9:27:01 AM.\n      Project "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\temp.win-amd64-3.7\\Release\\CMakeFiles\\3.15.3\\VCTargetsPath.vcxproj" on node 1 (default targets).\n      C:\\Program Files (x86)\\MSBuild\\Microsoft.Cpp\\v4.0\\V140\\Platforms\\x64\\PlatformToolsets\\v140\\Toolset.targets(36,5): error MSB8036: The Windows SDK version 8.1 was not found. Install the required version of Windows SDK or change the SDK version in the project property pages or by right-clicking the solution and selecting "Retarget solution". [C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\temp.win-amd64-3.7\\Release\\CMakeFiles\\3.15.3\\VCTargetsPath.vcxproj]\n      Done Building Project "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\temp.win-amd64-3.7\\Release\\CMakeFiles\\3.15.3\\VCTargetsPath.vcxproj" (default targets) -- FAILED.\n\n      Build FAILED.\n\n      "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\temp.win-amd64-3.7\\Release\\CMakeFiles\\3.15.3\\VCTargetsPath.vcxproj" (default target) (1) ->\n      (Desktop_PlatformPrepareForBuild target) ->\n        C:\\Program Files (x86)\\MSBuild\\Microsoft.Cpp\\v4.0\\V140\\Platforms\\x64\\PlatformToolsets\\v140\\Toolset.targets(36,5): error MSB8036: The Windows SDK version 8.1 was not found. Install the required version of Windows SDK or change the SDK version in the project property pages or by right-clicking the solution and selecting "Retarget solution". [C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\temp.win-amd64-3.7\\Release\\CMakeFiles\\3.15.3\\VCTargetsPath.vcxproj]\n\n          0 Warning(s)\n          1 Error(s)\n\n      Time Elapsed 00:00:00.51\n\n\n    Exit code: 1\n\n\n\n  -- Configuring incomplete, errors occurred!\n  See also "C:/Users/dbi227/AppData/Local/Temp/pip-install-9vjrsx_l/dlib/build/temp.win-amd64-3.7/Release/CMakeFiles/CMakeOutput.log".\n  Traceback (most recent call last):\n    File "<string>", line 1, in <module>\n    File "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\setup.py", line 261, in <module>\n      \'Topic :: Software Development\',\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\site-packages\\setuptools\\__init__.py", line 145, in setup\n      return distutils.core.setup(**attrs)\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\core.py", line 148, in setup\n      dist.run_commands()\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\dist.py", line 966, in run_commands\n      self.run_command(cmd)\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\dist.py", line 985, in run_command\n      cmd_obj.run()\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\site-packages\\wheel\\bdist_wheel.py", line 192, in run\n      self.run_command(\'build\')\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\cmd.py", line 313, in run_command\n      self.distribution.run_command(command)\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\dist.py", line 985, in run_command\n      cmd_obj.run()\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\command\\build.py", line 135, in run\n      self.run_command(cmd_name)\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\cmd.py", line 313, in run_command\n      self.distribution.run_command(command)\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\dist.py", line 985, in run_command\n      cmd_obj.run()\n    File "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\setup.py", line 135, in run\n      self.build_extension(ext)\n    File "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\setup.py", line 172, in build_extension\n      subprocess.check_call(cmake_setup, cwd=build_folder)\n    File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\subprocess.py", line 347, in check_call\n      raise CalledProcessError(retcode, cmd)\n  subprocess.CalledProcessError: Command \'[\'cmake\', \'C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\dlib\\\\tools\\\\python\', \'-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\dlib\\\\build\\\\lib.win-amd64-3.7\', \'-DPYTHON_EXECUTABLE=C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Continuum\\\\anaconda3\\\\envs\\\\opencv-env\\\\python.exe\', \'-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\dlib\\\\build\\\\lib.win-amd64-3.7\', \'-A\', \'x64\']\' returned non-zero exit status 1.\n  ----------------------------------------\n  ERROR: Failed building wheel for dlib\n  Running setup.py clean for dlib\nFailed to build dlib\nInstalling collected packages: dlib\n    Running setup.py install for dlib ... error\n    ERROR: Command errored out with exit status 1:\n     command: \'C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\python.exe\' -u -c \'import sys, setuptools, tokenize; sys.argv[0] = \'"\'"\'C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\dlib\\\\setup.py\'"\'"\'; __file__=\'"\'"\'C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\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 \'C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-record-3ic8n66v\\install-record.txt\' --single-version-externally-managed --compile\n         cwd: C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\\n    Complete output (75 lines):\n    running install\n    running build\n    running build_py\n    package init file \'dlib\\__init__.py\' not found (or not a regular file)\n    running build_ext\n    Building extension for Python 3.7.4 (default, Aug  9 2019, 18:34:13) [MSC v.1915 64 bit (AMD64)]\n    Invoking CMake setup: \'cmake C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\tools\\python -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\lib.win-amd64-3.7 -DPYTHON_EXECUTABLE=C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\python.exe -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\lib.win-amd64-3.7 -A x64\'\n    -- Building for: Visual Studio 14 2015\n    -- Selecting Windows SDK version  to target Windows 10.0.17763.\n    CMake Error at CMakeLists.txt:3 (project):\n      Failed to run MSBuild command:\n\n        C:/Program Files (x86)/MSBuild/14.0/bin/MSBuild.exe\n\n      to get the value of VCTargetsPath:\n\n        Microsoft (R) Build Engine version 14.0.25420.1\n        Copyright (C) Microsoft Corporation. All rights reserved.\n\n        Build started 10/23/2019 9:27:03 AM.\n        Project "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\temp.win-amd64-3.7\\Release\\CMakeFiles\\3.15.3\\VCTargetsPath.vcxproj" on node 1 (default targets).\n        C:\\Program Files (x86)\\MSBuild\\Microsoft.Cpp\\v4.0\\V140\\Platforms\\x64\\PlatformToolsets\\v140\\Toolset.targets(36,5): error MSB8036: The Windows SDK version 8.1 was not found. Install the required version of Windows SDK or change the SDK version in the project property pages or by right-clicking the solution and selecting "Retarget solution". [C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\temp.win-amd64-3.7\\Release\\CMakeFiles\\3.15.3\\VCTargetsPath.vcxproj]\n        Done Building Project "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\temp.win-amd64-3.7\\Release\\CMakeFiles\\3.15.3\\VCTargetsPath.vcxproj" (default targets) -- FAILED.\n\n        Build FAILED.\n\n        "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\temp.win-amd64-3.7\\Release\\CMakeFiles\\3.15.3\\VCTargetsPath.vcxproj" (default target) (1) ->\n        (Desktop_PlatformPrepareForBuild target) ->\n          C:\\Program Files (x86)\\MSBuild\\Microsoft.Cpp\\v4.0\\V140\\Platforms\\x64\\PlatformToolsets\\v140\\Toolset.targets(36,5): error MSB8036: The Windows SDK version 8.1 was not found. Install the required version of Windows SDK or change the SDK version in the project property pages or by right-clicking the solution and selecting "Retarget solution". [C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\build\\temp.win-amd64-3.7\\Release\\CMakeFiles\\3.15.3\\VCTargetsPath.vcxproj]\n\n            0 Warning(s)\n            1 Error(s)\n\n        Time Elapsed 00:00:00.10\n\n\n      Exit code: 1\n\n\n\n    -- Configuring incomplete, errors occurred!\n    See also "C:/Users/dbi227/AppData/Local/Temp/pip-install-9vjrsx_l/dlib/build/temp.win-amd64-3.7/Release/CMakeFiles/CMakeOutput.log".\n    Traceback (most recent call last):\n      File "<string>", line 1, in <module>\n      File "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\setup.py", line 261, in <module>\n        \'Topic :: Software Development\',\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\site-packages\\setuptools\\__init__.py", line 145, in setup\n        return distutils.core.setup(**attrs)\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\core.py", line 148, in setup\n        dist.run_commands()\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\dist.py", line 966, in run_commands\n        self.run_command(cmd)\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\dist.py", line 985, in run_command\n        cmd_obj.run()\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\site-packages\\setuptools\\command\\install.py", line 61, in run\n        return orig.install.run(self)\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\command\\install.py", line 545, in run\n        self.run_command(\'build\')\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\cmd.py", line 313, in run_command\n        self.distribution.run_command(command)\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\dist.py", line 985, in run_command\n        cmd_obj.run()\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\command\\build.py", line 135, in run\n        self.run_command(cmd_name)\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\cmd.py", line 313, in run_command\n        self.distribution.run_command(command)\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\distutils\\dist.py", line 985, in run_command\n        cmd_obj.run()\n      File "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\setup.py", line 135, in run\n        self.build_extension(ext)\n      File "C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-install-9vjrsx_l\\dlib\\setup.py", line 172, in build_extension\n        subprocess.check_call(cmake_setup, cwd=build_folder)\n      File "C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\lib\\subprocess.py", line 347, in check_call\n        raise CalledProcessError(retcode, cmd)\n    subprocess.CalledProcessError: Command \'[\'cmake\', \'C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\dlib\\\\tools\\\\python\', \'-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\dlib\\\\build\\\\lib.win-amd64-3.7\', \'-DPYTHON_EXECUTABLE=C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Continuum\\\\anaconda3\\\\envs\\\\opencv-env\\\\python.exe\', \'-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\dlib\\\\build\\\\lib.win-amd64-3.7\', \'-A\', \'x64\']\' returned non-zero exit status 1.\n    ----------------------------------------\nERROR: Command errored out with exit status 1: \'C:\\Users\\dbi227\\AppData\\Local\\Continuum\\anaconda3\\envs\\opencv-env\\python.exe\' -u -c \'import sys, setuptools, tokenize; sys.argv[0] = \'"\'"\'C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\dlib\\\\setup.py\'"\'"\'; __file__=\'"\'"\'C:\\\\Users\\\\dbi227\\\\AppData\\\\Local\\\\Temp\\\\pip-install-9vjrsx_l\\\\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 \'C:\\Users\\dbi227\\AppData\\Local\\Temp\\pip-record-3ic8n66v\\install-record.txt\' --single-version-externally-managed --compile Check the logs for full command output.\n
Run Code Online (Sandbox Code Playgroud)\n

DJc*_*ode 1

我尝试了很多方法来使用最新版本的 Anaconda,即 Python\xc2\xa03.7。然而,我却无法这样做。因为没有一个 .whl 文件与 Python\xc2\xa03.7 兼容,但与 Python\xc2\xa03.6 兼容。所以,我点击了链接将 Python 版本降级到 3.6。这样,spyder 和 Python 都会降级到 3.6 版本。完成此操作后,我使用以下命令安装了 OpenCV。

\n
pip install opencv-python\npip install opencv-contrib-python\n
Run Code Online (Sandbox Code Playgroud)\n

我使用以下命令安装了 dlib。

\n
pip install dlib-19.8.1-cp36-cp36m-win_amd64.whl\n
Run Code Online (Sandbox Code Playgroud)\n

这样就成功安装了最新版本的dlib。

\n

为了检查一切是否安装正确,我使用的命令和在 Anaconda 提示符下得到的输出如下。

\n
(py36) C:\\Users\\dbi227> python\nPython 3.6.9 |Anaconda, Inc.| (default, Jul 30 2019, 14:00:49) [MSC v.1915 64 bit (AMD64)] on win32\nType "help", "copyright", "credits" or "license" for more information.\n>>> import cv2\n>>> cv2.__version__\n\'4.1.1\'\n>>> import dlib\n>>> dlib.__version__\n\'19.8.1\'\n
Run Code Online (Sandbox Code Playgroud)\n

检查您的 iPython 安装是否也降级到 3.6 非常重要。为此,我在启动选项上除了spyder(anaconda3)之外还有一个选项spyder(py36)。确保单击spyder(py36)。因为那是安装库的地方。要检查它,您只需输入:

\n
import cv2\nimport dlib\n
Run Code Online (Sandbox Code Playgroud)\n

如果这些命令没有显示任何错误,则说明库已正确安装。

\n