[成功解决]note: This error originates from a subprocess, and is likely not a problem with pip.

Macos系统,在安装psycopg2的时候,一直报下面错误

 note: This error originates from a subprocess, and is likely not a problem with pip.

问题描述:

在安装一些python包的时候,出现找不到名为packaging的模块的问题。给了一个note:This error originates from a subprocess, and is likely not a problem with pip.

问题分析
初步分析:就报错信息而言,ModuleNotFoundError: No module named ‘packaging’:这是主要的错误,因为找不到名为packaging的模块而失败。按常规解决方案,pip install packaging就能够解决。但最后该装的东西还是没有装好。

这句话提供了对遇到的错误的一个重要线索,说明错误发生在pip调用的一个子进程中,而不是pip本身的直接问题。

错误来源:pip在执行某些操作时,常常需要调用子进程执行具体的任务,比如编译代码、运行安装脚本等。这里的错误是在这样一个子进程中发生的,而不是pip自身的代码中。

解决办法:经过网络搜索求助,大多都解释说由于某些库的版本不兼容导致的,按照他们的解决策略,最终也未能解决。

经过不懈的尝试可定位最终怀疑是安装参数的问题,想起了一个参数:

–no-build-isolation选项的作用


–no-build-isolation选项禁用了pip的构建隔离特性。默认情况下,当pip尝试安装一个包含pyproject.toml文件的包时,它会创建一个隔离的环境来构建这个包。这个隔离环境确保了构建过程中使用的依赖与项目其他部分的依赖隔离开来,从而减少了版本冲突的可能性。
当使用–no-build-isolation时,pip将不会创建这个隔离环境,而是直接在当前环境中构建包。这意味着它会使用当前环境中已安装的依赖来执行构建过程。

为什么加入–no-build-isolation后问题解决
问题的根源在于构建过程中需要的某些依赖(如packaging模块)在隔离的构建环境中不可用。当禁用了构建隔离,构建过程就能访问到当前环境中已经安装的所有依赖,包括packaging模块,从而解决了之前的构建失败问题。

安装成功了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值