首页 > 编程问答 >python pip 需要构建工具,而它已经安装

python pip 需要构建工具,而它已经安装

时间:2024-07-22 14:38:52浏览次数:12  
标签:python pip build-tools

我看到这个问题已经被发布了很多次,人们设法解决了这个问题,但我没有!!

操作系统版本:

Windows 10 21H1 Build 19043.1288

Python版本:

Python 3.9.7 (tags/v3.9.7:1016ef3, Aug 30 2021, 20:19:38) [MSC v.1929 64 bit (AMD64)] on win32

Pip、wheel和setuptool都可以日期:

>python -m pip install --upgrade pip
Requirement already satisfied: pip in c:\users\[...]\python39\lib\site-packages (21.3.1)

>pip install --upgrade wheel
Requirement already satisfied: wheel in c:\users\[...]\python39\lib\site-packages (0.37.0)

>pip install --upgrade setuptools
Requirement already satisfied: setuptools in c:\users\[...]\python39\lib\site-packages (58.5.3)

我已经从 https://visualstudio.microsoft.com/visual-cpp-build-tools/ 安装了可视化构建工具

:vs_BuildTools.exe

>vs_buildtools.exe --norestart --passive --downloadThenInstall --includeRecommended --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Workload.VCTools --add Microsoft.VisualStudio.Workload.MSBuildTools

我已经尝试了两者界面和命令行:

{
  "version": "1.0",
  "components": [
    "Microsoft.VisualStudio.Component.Roslyn.Compiler",
    "Microsoft.Component.MSBuild",
    "Microsoft.VisualStudio.Component.CoreBuildTools",
    "Microsoft.VisualStudio.Workload.MSBuildTools",
    "Microsoft.VisualStudio.Component.Windows10SDK",
    "Microsoft.VisualStudio.Component.VC.CoreBuildTools",
    "Microsoft.VisualStudio.Component.VC.Tools.x86.x64",
    "Microsoft.VisualStudio.Component.VC.Redist.14.Latest",
    "Microsoft.VisualStudio.Component.Windows10SDK.19041",
    "Microsoft.VisualStudio.Component.VC.CMake.Project",
    "Microsoft.VisualStudio.Component.TestTools.BuildTools",
    "Microsoft.VisualStudio.Component.VC.ASAN",
    "Microsoft.VisualStudio.Component.TextTemplating",
    "Microsoft.VisualStudio.Component.VC.CoreIde",
    "Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core",
    "Microsoft.VisualStudio.Component.VC.v141.x86.x64",
    "Microsoft.VisualStudio.Workload.VCTools"
  ]
}

这是此安装中的 .vsconfig 文件内容:

{
  "version": "1.0",
  "components": [
    "Microsoft.VisualStudio.Component.CoreEditor",
    "Microsoft.VisualStudio.Workload.CoreEditor",
    "Microsoft.VisualStudio.Component.Roslyn.Compiler",
    "Microsoft.Component.MSBuild",
    "Microsoft.VisualStudio.Component.Static.Analysis.Tools",
    "Microsoft.VisualStudio.Component.Roslyn.LanguageServices",
    "Microsoft.VisualStudio.Component.TextTemplating",
    "Microsoft.VisualStudio.Component.Debugger.JustInTime",
    "Microsoft.VisualStudio.Component.NuGet",
    "Microsoft.Net.Component.4.7.1.TargetingPack",
    "Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions",
    "Microsoft.VisualStudio.Component.VC.CoreIde",
    "Microsoft.VisualStudio.Component.VC.Redist.14.Latest",
    "Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core",
    "Microsoft.VisualStudio.Component.VC.Tools.x86.x64",
    "Microsoft.VisualStudio.Component.Graphics.Win81",
    "Microsoft.VisualStudio.Component.Graphics.Tools",
    "Microsoft.VisualStudio.Component.VC.DiagnosticTools",
    "Microsoft.VisualStudio.Component.Windows10SDK.17763",
    "Microsoft.VisualStudio.Component.VC.CMake.Project",
    "Microsoft.VisualStudio.Component.VC.ATL",
    "Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest",
    "Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest",
    "Microsoft.Component.VC.Runtime.UCRTSDK",
    "Microsoft.VisualStudio.Component.Windows81SDK",
    "Microsoft.VisualStudio.Component.Windows10SDK.16299.UWP",
    "Microsoft.VisualStudio.Component.Windows10SDK.16299.UWP.Native",
    "Microsoft.VisualStudio.Component.Windows10SDK.16299.Desktop",
    "Microsoft.VisualStudio.Component.VC.140",
    "Microsoft.VisualStudio.Workload.NativeDesktop",
    "Microsoft.Net.Component.3.5.DeveloperTools",
    "Microsoft.VisualStudio.Component.Unity",
    "Microsoft.VisualStudio.Workload.ManagedGame"
  ]
}

我还尝试安装 Visual Studio Community 2017(我实际上已经安装了它),这是此安装中的 .vsconfig 文件:

>pip install box2d-py
Collecting box2d-py
  Using cached box2d-py-2.3.8.tar.gz (374 kB)
  Preparing metadata (setup.py) ... done
Building wheels for collected packages: box2d-py
  Building wheel for box2d-py (setup.py) ... \

[...]

    Box2D\Common\b2Settings.h(144) : Warning 506: Can't wrap varargs with keyword arguments enabled
    Box2D\Common\b2Math.h(91) : Warning 509: Overloaded method b2Vec2::operator ()(int32) effectively ignored,
    Box2D\Common\b2Math.h(85) : Warning 509: as it is shadowed by b2Vec2::operator ()(int32) const.
    error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/

我已重新启动计算机并....:

我要疯了!!!

此过程出了什么问题?

请需要帮助。| ||非常感谢!

注意:我还尝试将 cl.exe 目录添加到我的路径中并且它正在工作。

>cl
Compilateur d'optimisation Microsoft (R) C/C++ version 19.16.27045 pour x64
Copyright (C) Microsoft Corporation. Tous droits réservés.

utilisation : cl [ option... ] nom de fichier... [ /link linkoption... ]

但在 pip install 上仍然有相同的错误...


似乎问题出在已安装必要的构建工具,但 PIP 无法识别它们。这可能是由几个因素造成的:

1. 环境变量不正确:

  • 确保的环境变量中已设置 MSVC 路径。这通常需要将 PATH INCLUDE LIB 变量指向的 Visual Studio 安装目录下的正确文件夹。

  • 还可以尝试设置 VS140COMNTOOLS 环境变量,将其指向 Visual Studio 安装目录下的 Common7\Tools 文件夹。

2. PIP 使用缓存的轮子:

*  PIP 有时会缓存不需要构建工具的预构建软件包(“轮子”)。尝试使用 `--no-cache-dir`  选项强制 PIP 下载并构建源代码包:

  ```bash
  pip install --no-cache-dir box2d-py
  ```

3. Visual Studio 安装问题:

* 尽管已经安装了 Visual Studio,但它可能未正确配置或缺少某些组件。尝试运行 Visual Studio Installer 并修复的安装。确保已选择“使用 C++ 进行桌面开发”工作负载,并包含了最新的 Windows SDK。

4. Python 架构不匹配:

* 确保的 Python 安装(32 位或 64 位)与的 Visual Studio 构建工具匹配。如果使用的是 64 位 Python,则需要安装 64 位 Visual Studio 构建工具。

5. 重新启动的系统:

*  在对环境变量或 Visual Studio 安装进行任何更改后,请务必重新启动系统,以确保更改生效。

如果这些步骤都不起作用,可以尝试以下操作:

  • 使用预构建的轮子: 一些软件包提供预构建的轮子,这些轮子不需要构建工具。可以尝试从第三方存储库(例如 https://www.lfd.uci.edu/~gohlke/pythonlibs/ ) 下载 box2d-py 的预构建轮子。

  • 创建一个新的虚拟环境: 创建一个新的 Python 虚拟环境,并尝试在其中安装 box2d-py 。这可以帮助隔离任何潜在的冲突。

希望这些解决方案可以帮助解决问题!

标签:python,pip,build-tools
From: 69858421

相关文章

  • 无法在浏览器中访问Python 127.0.0.1:8000上的本地主机
    fromdjango.contribimportadminfromdjango.urlsimportpath,includeurlpatterns=[path('admin/',admin.site.urls),path('products/'),include('products.urls')#thisline]嗨,任何人。很抱歉问这样的问题,但这是我第一次尝试python。......
  • 在 VSCode 中通过 Python 使用 YouTube API 时如何启用 Intellisense
    我想在使用GoogleYouTubeAPI和Python时在VSCode中获得IntelliSense。但我不知道详细步骤。fromgoogleapiclient.discoveryimportbuildapi_key="****"youtube=build("youtube","v3",developerKey=api_key)request=youtube.channels().list(part......
  • 当 python 脚本通过 jenkins + Github 在 Windows 本地计算机上运行时,chrome 浏览器不
    我的Python代码是(windowsMachine)fromseleniumimportwebdriverprint("newLine")print("2Line")print("3Line")holdChrome=webdriver.ChromeOptions()holdChrome.add_experimental_option("detach",True)#Restricta......
  • python_基础_数据类型
    基础数据类型不需要声明,只有被赋值后才会创建变量。变量本身没有类型,“类型”指的是所存值的类型。类型判断type(x)和isinstance(x,int)前者不会认为子类是一种他的父类类型后者会认为子类是父类类型>>>classA:...pass...>>>classB(A):...pass......
  • IPython 使用技巧
    IPython是一个强大的交互式Pythonshell,提供了许多方便的功能,使Python编程更加高效和愉快。本文将介绍一些IPython的实用技巧,帮助开发者充分利用其功能,提高编程效率。1.基本操作和快捷键1.1启动IPython可以通过在终端输入以下命令来启动IPython:ipython启动后,你......
  • 【python】类方法和静态方法的区别
    类方法和静态方法在Python中都可以用来定义与类相关的功能,但它们有不同的使用场景和优缺点。虽然类方法也可以用来实现验证逻辑,但静态方法在某些情况下更合适。让我们详细看看这两种方法的区别以及为什么在某些情况下静态方法可能更适合验证功能。类方法和静态方法的区别类......
  • Python自动化:一键提取千万个Excel指定数据
    一、传统方法的局限性打开每个Excel文件,逐个查找需要的数据。筛选出老板需要的数据列。复制并粘贴到新的工作表中。保存并关闭每个文件。这个过程不仅耗时,而且容易出错。每一次的筛选都可能遗漏数据,每一次的复制粘贴都可能引入错误。二、Python自动化的解决方案i......
  • Python:提交和跟踪许多子流程会导致“卡住”子流程
    我有一个第3方cli可执行文件,需要从python代码中调用。这些都是繁重的计算(CPU),我需要调用它大约50-100次。可执行文件本身在某种程度上是多线程的,但不是所有步骤,而且我有很多可用的核心。这意味着我希望同时运行多个子进程,但不是全部。因此,我需要提交其中一些,然后跟踪......
  • 无法在 Ubuntu 20.04 中安装 python3-venv,一些损坏的软件包
    这可能很长,但请耐心看完当我在关注这篇文章时尝试安装python3-venvsudoaptinstallbuild-essentiallibssl-devlibffi-devpython3-dev它抛出了以下错误:libffi-devpython3-devReadingpackagelists...DoneBuildingdependencytreeRead......
  • 正则表达式在python爬虫中常用的方法举例
    在爬虫中,正则表达式被广泛用于从网页中提取特定信息。以下是一些常用的正则表达式方法举例,以及它们在爬虫中的典型应用场景:1.提取URLimportreurl_pattern=r'https?://(?:[-\w.]|(?:%[\da-fA-F]{2}))+'urls=re.findall(url_pattern,html_content)用于从网页中......