【问题标题】:pip install dlib, Cmake error compiler is not foundpip install dlib,Cmake错误编译器未找到
【发布时间】:2019-08-29 05:53:04
【问题描述】:

当我想安装 pip install dlib 它给了我这个错误我已经安装了 MSVC v142-vs 2019 c++ x64 build tools 和 c++ Cmake tools for windows,但同样的错误我什至尝试过 NET DESKTOP BUILD TOOLS 还不行。有谁知道如何解决这个烦人的错误?

蟒蛇32 3.7 窗户 7

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users>pip install dlib
Collecting dlib
  Using cached https://files.pythonhosted.org/packages/05/57/e8a8caa3c89a27f80bc
78da39c423e2553f482a3705adc619176a3a24b36/dlib-19.17.0.tar.gz
Installing collected packages: dlib
  Running setup.py install for dlib ... error
    ERROR: Command errored out with exit status 1:
     command: 'c:\users\appdata\local\programs\python\python37-32\python.e
xe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\
\\AppData\\Local\\Temp\\pip-install-7jf_6geq\\dlib\\setup.py'"'"'; __file__='"'"
'C:\\Users\\\AppData\\Local\\Temp\\pip-install-7jf_6geq\\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\AppData\Local\Temp\pip-record-a0stlura\inst
all-record.txt' --single-version-externally-managed --compile
         cwd: C:\Users\AppData\Local\Temp\pip-install-7jf_6geq\dlib\
    Complete output (80 lines):
    running install
    running build
    running build_py
    package init file 'dlib\__init__.py' not found (or not a regular file)
    running build_ext
    Building extension for Python 3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 14:05:1
6) [MSC v.1915 32 bit (Intel)]
    Invoking CMake setup: 'cmake C:\Users\AppData\Local\Temp\pip-install-7
jf_6geq\dlib\tools\python -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\Users\AppDat
a\Local\Temp\pip-install-7jf_6geq\dlib\build\lib.win32-3.7 -DPYTHON_EXECUTABLE=c
:\users\appdata\local\programs\python\python37-32\python.exe -DCMAKE_LIBRA
RY_OUTPUT_DIRECTORY_RELEASE=C:\Users\AppData\Local\Temp\pip-install-7jf_6g
eq\dlib\build\lib.win32-3.7'
    -- Building for: NMake Makefiles
    -- The C compiler identification is unknown
    -- The CXX compiler identification is unknown
    CMake Error in CMakeLists.txt:
      The CMAKE_C_COMPILER:

        cl

      is not a full path and was not found in the PATH.

      To use the NMake generator with Visual C++, cmake must be run from a shell

      that can use the compiler cl from the command line.  This environment is
      unable to invoke the cl compiler.  To fix this problem, run cmake from the

      Visual Studio Command Prompt (vcvarsall.bat).

      Tell CMake where to find the compiler by setting either the environment
      variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path t
o
      the compiler, or to the compiler name if it is in the PATH.


    CMake Error in CMakeLists.txt:
      The CMAKE_CXX_COMPILER:

        cl

      is not a full path and was not found in the PATH.

      To use the NMake generator with Visual C++, cmake must be run from a shell

      that can use the compiler cl from the command line.  This environment is
      unable to invoke the cl compiler.  To fix this problem, run cmake from the

      Visual Studio Command Prompt (vcvarsall.bat).

      Tell CMake where to find the compiler by setting either the environment
      variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full pat
h
      to the compiler, or to the compiler name if it is in the PATH.


    -- Configuring incomplete, errors occurred!
    See also "C:/Users/AppData/Local/Temp/pip-install-7jf_6geq/dlib/build/
temp.win32-3.7/Release/CMakeFiles/CMakeOutput.log".
    See also "C:/Users/AppData/Local/Temp/pip-install-7jf_6geq/dlib/build/
temp.win32-3.7/Release/CMakeFiles/CMakeError.log".
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\AppData\Local\Temp\pip-install-7jf_6geq\dlib\setup.py
", line 261, in <module>
        'Topic :: Software Development',
      File "c:\users\appdata\local\programs\python\python37-32\lib\site-pa
ckages\setuptools\__init__.py", line 143, in setup
        return distutils.core.setup(**attrs)
      File "c:\users\appdata\local\programs\python\python37-32\lib\distuti
ls\core.py", line 148, in setup
        dist.run_commands()
      File "c:\users\appdata\local\programs\python\python37-32\lib\distuti
ls\dist.py", line 966, in run_commands
        self.run_command(cmd)
      File "c:\users\appdata\local\programs\python\python37-32\lib\distuti
ls\dist.py", line 985, in run_command
        cmd_obj.run()
      File "c:\users\appdata\local\programs\python\python37-32\lib\site-pa
ckages\setuptools\command\install.py", line 61, in run
        return orig.install.run(self)
      File "c:\users\appdata\local\programs\python\python37-32\lib\distuti
ls\command\install.py", line 545, in run
        self.run_command('build')
      File "c:\users\appdata\local\programs\python\python37-32\lib\distuti
ls\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "c:\users\appdata\local\programs\python\python37-32\lib\distuti
ls\dist.py", line 985, in run_command
        cmd_obj.run()
      File "c:\users\appdata\local\programs\python\python37-32\lib\distuti
ls\command\build.py", line 135, in run
        self.run_command(cmd_name)
      File "c:\users\appdata\local\programs\python\python37-32\lib\distuti
ls\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "c:\users\appdata\local\programs\python\python37-32\lib\distuti
ls\dist.py", line 985, in run_command
        cmd_obj.run()
      File "C:\Users\AppData\Local\Temp\pip-install-7jf_6geq\dlib\setup.py
", line 135, in run
        self.build_extension(ext)
      File "C:\Users\AppData\Local\Temp\pip-install-7jf_6geq\dlib\setup.py
", line 172, in build_extension
        subprocess.check_call(cmake_setup, cwd=build_folder)
      File "c:\users\appdata\local\programs\python\python37-32\lib\subproc
ess.py", line 341, in check_call
        raise CalledProcessError(retcode, cmd)
    subprocess.CalledProcessError: Command '['cmake', 'C:\\Users\\\AppData
\\Local\\Temp\\pip-install-7jf_6geq\\dlib\\tools\\python', '-DCMAKE_LIBRARY_OUTP
UT_DIRECTORY=C:\\Users\\\AppData\\Local\\Temp\\pip-install-7jf_6geq\\dlib\
\build\\lib.win32-3.7', '-DPYTHON_EXECUTABLE=c:\\users\\\appdata\\local\\p
rograms\\python\\python37-32\\python.exe', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_REL
EASE=C:\\Users\\\AppData\\Local\\Temp\\pip-install-7jf_6geq\\dlib\\build\\
lib.win32-3.7']' returned non-zero exit status 1.
    ----------------------------------------
ERROR: Command errored out with exit status 1: 'c:\users\appdata\local\pro
grams\python\python37-32\python.exe' -u -c 'import sys, setuptools, tokenize; sy
s.argv[0] = '"'"'C:\\Users\\\AppData\\Local\\Temp\\pip-install-7jf_6geq\\d
lib\\setup.py'"'"'; __file__='"'"'C:\\Users\\\AppData\\Local\\Temp\\pip-in
stall-7jf_6geq\\dlib\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__
file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compi
le(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\AppData\Lo
cal\Temp\pip-record-a0stlura\install-record.txt' --single-version-externally-man
aged --compile Check the logs for full command output.

C:\Users>

【问题讨论】:

  • 在“pip install cmake”之后尝试
  • cmake 已经安装好了! @venkatakrishnan
  • 您能提供有关您正在使用的操作系统的信息吗?
  • 我正在使用 Windows 7 Ultimate 64 位包一@venkatakrishnan

标签: python-3.x visual-studio cmake compiler-errors artificial-intelligence


【解决方案1】:

基本上,在 Windows 中,Cmake 出于某种原因默认使用 Nmake。有多种方法可以避免这种情况,可以说最简单的方法是安装 Visual C++ Build Tools,正如错误本身所暗示的那样。

要将 NMake 生成器与 Visual C++ 一起使用,cmake 必须从可以从命令行使用编译器 cl 的 shell 运行。此环境无法调用 cl 编译器。要解决此问题,请从 Visual Studio 命令提示符 (vcvarsall.bat) 运行 cmake。通过将环境变量“CC”或 CMake 缓存条目 CMAKE_C_COMPILER 设置为编译器的完整路径或编译器名称(如果它在 PATH 中),告诉 CMake 在哪里可以找到编译器。

下载Build Tools for Visual Studio 2019 后,在应用打开时检查Visual C++ Build Tools,然后点击安装。

现在尝试从命令行执行pip install dlib(这次它将使用 CMake 而不是 NMake)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-21
    • 2018-06-20
    • 2021-02-21
    • 1970-01-01
    • 1970-01-01
    • 2021-11-16
    • 2016-07-25
    • 2015-06-27
    相关资源
    最近更新 更多