Python3 安装软件出现 cl.exe failed with exit status 2 错误

news/2024/5/3 19:11:22/文章来源:https://blog.csdn.net/zqqnancy/article/details/127054138

最近因项目需要,开始深入接触python。遇到的一些环境问题,分享下。

requirements.txt中包含一系列所需组件,部分组件安装会报cl.ext错误。

如错误问题:Python3 安装pycrypto 2.6.1 出现 cl.exe failed with exit status 2 错误

或者错误问题:Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/

 原因:缺少对应的VC编译环境。在windows下使用pip安装一些python的第三方库,有很多使用C写了一些扩展,需要使用VC++ Compiler 来编译安装。

解决办法:

1. 下载安装visual studio

https://visualstudio.microsoft.com/visual-cpp-build-tools/

2. 安装

因为python不同版本要求不同版本的vc++,根据我的所需安装了Microsoft Visual C++ 14.0和2019

3.​编辑​配置环境变量

设置用户变量:VCINSTALLDIR = "E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC" 

 

 设置VC++ 2014的一些配置信息后安装

##更换为2014版本
##查看设置的用户变量是否生效
(base) C:\Users\Lenovo>set VCINSTALLDIR
VCINSTALLDIR=E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC##重置cl的引用路径
(base) C:\Users\Lenovo>set CL=/FI"%VCINSTALLDIR%\include\stdint.h"
(base) C:\Users\Lenovo>SET CL
CL=/FI"E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h"
CLASSPATH=;E:\Program Files\Java\jdk1.8.0_202\bin;E:\Program Files\Java\jdk1.8.0_202\lib\dt.jar;E:\Program Files\Java\jdk1.8.0_202\lib\tools.jar;##虚拟环境激活
(base) C:\Users\Lenovo>e:  
(base) C:\Users\Lenovo>cd E:\Git\data-platform\bk-base\src\api\venv\Scripts
(base) E:\Git\...\venv\Scripts>activate
(venv) (base)  E:\Git\...\venv\Scripts>set CL
CL=/FI"E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\stdint.h"
CLASSPATH=;E:\Program Files\Java\jdk1.8.0_202\bin;E:\Program Files\Java\jdk1.8.0_202\lib\dt.jar;E:\Program Files\Java\jdk1.8.0_202\lib\tools.jar;##安装pycrypto
(venv) (base)  E:\Git\...\venv\Scripts>pip install pycrypto==2.6.1

安装仍然报错:

注:以下各种地址都要根据你自己的实际情况来。

拷贝C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64 中的文件(特别注意,路径根据实际情况)到目录E:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin

rc.exe

rcdll.dll     

再次安装成功。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_14321.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android国际化多语言切换

关于App国际化,之前有讲到国际化资源、字符换、布局相关,想要了解的猛戳用力抱一下APP国际化。借着本次重构多语言想跟大家聊一下多语言切换,多语言切换对于一款国际化App来讲是重中之重,并非难事,但是若要做好也是一件…

LeetCode-136-只出现一次的数字

1、哈希表 利用哈希表记录每个元素和其出现的次数&#xff0c;最后遍历哈希表找到只出现一次的数字。缺点在于额外空间为O(n)O(n)O(n)。 class Solution { public:int singleNumber(vector<int> &nums) {unordered_map<int, int> hs;for (auto i: nums) {hs[…

疫情下低代码平台将是企业的曙光

全球疫情的爆发&#xff0c;加速了企业数字化转型进程&#xff0c;为了响应不断变化和增加的业务需求&#xff0c;需要充足的资金以及专业的开发人员才能够有效推行数字化管理。然而在这样的情景下&#xff0c;人员的缺少&#xff0c;时间的效率等问题&#xff0c;导致很多企业…

图像分类数据集(线性神经网络,需结合从零实现softmax回归一起学习)

文章目录图像分类数据集读取小批量整合所有组件小结图像分类数据集 导入必要的类包。 import torch import torchvision from torch.utils import data #torchvision是pytorch的一个图形库&#xff0c;它服务于PyTorch深度学习框架的&#xff0c;主要用来构建计算机视觉模型。…

Kafka设计原理——副本数据同步机制(watermark 和 leader epoch)

文章目录LEO更新机制follower副本LEO更新leader副本LEO更新HW更新机制follower更新HWleader更新HW使用HW衡量数据同步情况的缺陷LEO更新机制 follower副本LEO更新 Kafka设计了两套follower副本LEO属性&#xff0c;一套LEO值保存在follower副本所在的broker缓存上&#xff1b;…

详解 B2B 用户、组织、员工、角色

整理了一下 toB 多组织系统中常见的实体关系&#xff0c;往往在实际项目中这些基础模块是公司老前辈已经开发完成的&#xff0c;因此新人在此基础上开发一些相关的业务模块很容易被这些模糊不清的关系搞晕。 一、定义 user 用户&#xff0c;操作者的唯一标识&#xff0c;通常…

去中心化时代的创作者经济

所谓创作者经济&#xff0c;具体是指利用各种互联网工具&#xff0c;由个人或团体进行内容创作、分发及一系列与创作者相关服务下产生的经济收益。 这一概念也主要在当前的 web2互联网时代&#xff0c;并且有很多鲜明的案例凸显出了创作者经济的强大潜力&#xff0c;像我们熟知…

SpringCloud-20-Spring Cloud Hystrix客户端服务降级

8.5 客户端服务降级 通常情况下&#xff0c;我们都会在客户端进行服务降级&#xff0c;当客户端调用的服务端的服务不可用时&#xff0c;客户端直接进行服务降级处理&#xff0c;避免其线程被长时间、不必要地占用。沿用microservice-cloud-consumer-dept-openFeign客户端工程…

ConcurrentHashMap简单案例

concurrenthashmap 线程安全集合类 线程安全基本分类 线程安全集合类可以分为三大类&#xff1a; 遗留的线程安全集合如 Hashtable &#xff0c; Vector 使用 Collections 装饰的线程安全集合&#xff0c;如 Collections.synchronizedCollectionCollections.synchronizedLis…

【剑指offer】链表篇-含题目代码思路解析

【剑指offer】链表篇1. JZ6 从尾到头打印链表C注意2. JZ24 反转链表C(双指针法)注意3. JZ25 合并两个排序的链表C注意4. JZ52 两个链表的第一个公共结点C 【错误】C【正确】注意5. JZ23 链表中环的入口结点C注意6. JZ22 链表中倒数最后k个结点C注意7. JZ35 复杂链表的复制8. JZ…

如何实时计算中证1000指数的主买/主卖交易量

主买是指以卖方的报价成交&#xff0c;主卖是指以买方的报价成交。 一般来说&#xff0c;主动买入就是资金流入&#xff0c;主动卖出就是资金流出&#xff0c;所以实时统计主买/主卖交易量能够实时监控资金的流入流出情况。本文基于中证 1000 指数&#xff0c;介绍如何利用 Dol…

BitSet字符个数统计

import java.util.Scanner; import java.util.BitSet; public class Main { public static void main(String[] args) { Scanner scanner new Scanner(System.in); String line scanner.next(); //总共有128个字符。字需要用128位 BitSet bitSet new BitSet(128); for…

微服务应用之OAuth2.0的四种授权方式

引言 OAuth 2.0 是一种授权机制&#xff0c;主要用来颁发令牌&#xff08;token&#xff09;。 OAuth 2.0 的标准是 RFC 6749 文件&#xff0c;这个文件写出&#xff08;由于互联网有多种场景&#xff0c;&#xff09;本标准定义了获得令牌的四种授权方式&#xff08;authoriza…

top命令

【1】top命令 语法格式&#xff1a; top(选项)选项如下&#xff1a; -b&#xff1a;以批处理模式操作&#xff1b; -c&#xff1a;显示完整的治命令&#xff1b; -d&#xff1a;屏幕刷新间隔时间&#xff1b; -I&#xff1a;忽略失效过程&#xff1b; -s&#xff1a;保密模式…

SpringBoot - 集成Quartz框架之常见问题(五)

写在前面 SpringBoot - 集成Quartz框架之CRON表达式 SpringBoot - 集成Quartz框架之Quartz简介(一) SpringBoot - 集成Quartz框架之常用配置(二) SpringBoot - 集成Quartz框架之具体步骤(三) SpringBoot - 集成Quartz框架之独立数据源(四) 1. 什么是失火策略&#xff1f; 场…

React 学习笔记总结(二)

文章目录1. React 之 props的使用2. React 之 对props进行限制3. React 之 props只读 (知道修改在这是什么效果&#xff01;)4. React 之 props简写方式5. 类式组件中的构造器 与 props的注意事项6. 函数式组件 使用props7. 类式组件字符串形式的refs属性8. React 之 回调形式r…

密码学奇妙之旅、02 混合加密系统、AES、RSA标准、Golang代码

探索密码学的奇妙之旅。介绍CTR、混合密码系统、RSA-OAEP相关理论。并基于AES、RSA标准,使用golang crypto包实现了简单混合加密系统。CTR 计数器模式计数器模式CTR是分组密码模式中的一种。通过将逐次累加的计数器进行加密来生成密钥流的流密码。每次加密时会生成一个不同的值…

gmssl服务端和客户端程序、吉大正元身份认证网关、吉大正元SDK+USBkey 两两之间双证书双向认证数据通信测试

注意事项 gmssl使用双证书双向认证的gmtl协议报错crypto/sm2/sm2_sign.c 510: sm2_do_verifySSL3 alert write:fatal:decrypt error_MY CUP OF TEA的博客-CSDN博客需要根据上述链接修改gmssl的源代码&#xff0c;才能开启 国密双证书双向认证&#xff0c;否则会报错 目录 gms…

湖仓一体电商项目(二十三):离线业务 统计每天用户商品浏览所获积分

文章目录 统计每天用户商品浏览所获积分 一、业务需求 二、​​​​​​​业务流程图 三、业务实现 1、​​​​​​​​​​​​​​代码编写 2、代码执行 四、数据发布接口 五、​​​​​​​​​​​​​​数据可视化 统计每天用户商品浏览所获积分 一、业务需求 …

Git_IDEA集成GitHub_推送代码到远程库

注意&#xff1a; push 是将本地库代码推送到远程库&#xff0c;如果本地库代码跟远程库代码版本不一致&#xff0c; push 的操作是会被拒绝的。也就是说&#xff0c; 要想 push 成功&#xff0c;一定要保证本地库的版本要比远程库的版本高&#xff01; 因此一个成熟的程序员在…