【问题标题】:ERROR: Could not build wheels for pymssql which use PEP 517 and cannot be installed directly错误:无法为使用 PEP 517 且无法直接安装的 pymssql 构建轮子
【发布时间】:2021-04-14 01:19:03
【问题描述】:

我正在尝试在 Windows 上从 pip 安装 pymssql。问题是,我不断收到以下错误:

ERROR: Failed building wheel for pymssql
Failed to build pymssql
ERROR: Could not build wheels for pymssql which use PEP 517 and cannot be installed directly

完整日志如下:

Building wheels for collected packages: pymssql
  Building wheel for pymssql (PEP 517) ... error
  ERROR: Command errored out with exit status 1:
   command: 'c:\users\administrator\appdata\local\programs\python\python39\python.exe' 'c:\users\administrator\appdata\local\programs\python\python39\lib\site-packages\pip\_vendor\pep517\_in_process.py' build_wheel 'C:\Users\ADMINI~1\AppData\Local\Temp\tmpvh65n1en'
       cwd: C:\Users\Administrator\AppData\Local\Temp\pip-install-skfrg8ce\pymssql_3826b234076b47ab9618e9d73ff9698b
  Complete output (16 lines):
  setup.py: platform.system() => 'Windows'
  setup.py: platform.architecture() => ('64bit', 'WindowsPE')
  running bdist_wheel
  running build
  running build_ext
  cythoning src\_mssql.pyx to src\_mssql.c
  cythoning src\pymssql.pyx to src\pymssql.c
  building '_mssql' extension
  creating build
  creating build\temp.win-amd64-3.9
  creating build\temp.win-amd64-3.9\Release
  creating build\temp.win-amd64-3.9\Release\src
  C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.28.29333\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Ifreetds\include -IC:\Users\Administrator\AppData\Local\Temp\pip-install-skfrg8ce\pymssql_3826b234076b47ab9618e9d73ff9698b\build\include -Ic:\users\administrator\appdata\local\programs\python\python39\include -Ic:\users\administrator\appdata\local\programs\python\python39\include -IC:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.28.29333\include -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\ucrt -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\shared -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\um -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\winrt -IC:\Program Files (x86)\Windows Kits\10\include\10.0.18362.0\cppwinrt /Tcsrc\_mssql.c /Fobuild\temp.win-amd64-3.9\Release\src\_mssql.obj -DMSDBLIB
  _mssql.c
  src\_mssql.c(611): fatal error C1083: Cannot open include file: 'sqlfront.h': No such file or directory
  error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\VC\\Tools\\MSVC\\14.28.29333\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2

有人遇到过这个问题吗?我已经搜索了很多,但没有答案。我尝试降级 pip 并尝试安装旧版本的 pymssql,但没有运气。

【问题讨论】:

    标签: python pip pymssql


    【解决方案1】:

    您缺少构建扩展所需的一些头文件(可能还有库)。

    除非您想从头开始构建,否则从Dave Gohlke's Windows wheels page 获取合适的预构建轮并使用 Pip 安装它可能会更容易。请务必为您的 Python 版本和位数选择正确的文件。

    【讨论】:

      【解决方案2】:

      我遇到同样的错误,不同的解决方案。

      我正在使用 mac + py3.9

      解决方案:

      brew install freetds
      

      错误信息:

      Collecting pymssql
        Using cached pymssql-2.1.5.tar.gz (167 kB)
        Installing build dependencies ... done
        Getting requirements to build wheel ... done
        Installing backend dependencies ... done
          Preparing wheel metadata ... done
      Building wheels for collected packages: pymssql
        Building wheel for pymssql (PEP 517) ... error
        ERROR: Command errored out with exit status 1:
         command: /usr/local/opt/python@3.9/bin/python3.9 /usr/local/lib/python3.9/site-packages/pip/_vendor/pep517/_in_process.py build_wheel /var/folders/ch/88r0y0hx02v5v903bl4pf4c40000gn/T/tmp053ptsxm
             cwd: /private/var/folders/ch/88r0y0hx02v5v903bl4pf4c40000gn/T/pip-install-klunmran/pymssql
        Complete output (33 lines):
        setup.py: platform.system() => 'Darwin'
        setup.py: platform.architecture() => ('64bit', '')
        setup.py: platform.libc_ver() => ('', '')
        setup.py: Detected Darwin/Mac OS X.
            You can install FreeTDS with Homebrew or MacPorts, or by downloading
            and compiling it yourself.
      
            Homebrew (http://brew.sh/)
            --------------------------
            brew install freetds
      
            MacPorts (http://www.macports.org/)
            -----------------------------------
            sudo port install freetds
      
        setup.py: Not using bundled FreeTDS
        setup.py: include_dirs = ['/usr/local/include']
        setup.py: library_dirs = ['/usr/local/lib']
        running bdist_wheel
        running build
        running build_ext
        cythoning src/_mssql.pyx to src/_mssql.c
        cythoning src/pymssql.pyx to src/pymssql.c
        building '_mssql' extension
        creating build
        creating build/temp.macosx-10.15-x86_64-3.9
        creating build/temp.macosx-10.15-x86_64-3.9/src
        clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -I/usr/local/include -I/usr/local/include -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/sqlite/include -I/usr/local/Cellar/python@3.9/3.9.0_1/Frameworks/Python.framework/Versions/3.9/include/python3.9 -c src/_mssql.c -o build/temp.macosx-10.15-x86_64-3.9/src/_mssql.o -DMSDBLIB
        src/_mssql.c:611:10: fatal error: 'sqlfront.h' file not found
        #include "sqlfront.h"
                 ^~~~~~~~~~~~
        1 error generated.
        error: command '/usr/bin/clang' failed with exit code 1
        ----------------------------------------
        ERROR: Failed building wheel for pymssql
      Failed to build pymssql
      ERROR: Could not build wheels for pymssql which use PEP 517 and cannot be installed directly
      

      【讨论】:

        【解决方案3】:

        将 Python 版本从 3.8.2 更改为 3.9.5 后,能够运行 pip 命令。

        【讨论】:

          猜你喜欢
          • 2020-11-01
          • 2020-08-05
          • 2021-02-28
          • 2020-10-16
          • 1970-01-01
          • 1970-01-01
          • 2021-03-07
          • 2021-06-22
          • 2020-12-23
          相关资源
          最近更新 更多