python-install-package-C++编译器问题---05

产生原因:

python3.4用的是msvs2010编译的,所以python3.4默认只能认出msvs2010。

python2.7用的是msvs2008编译的,所以python2.7默认只能认出msvs2008.

方法一:安装mingw(不推荐)

下载mingw环境,添加环境变量

或者使用

python setup.py build –compiler=mingw32

方法二:安装对应版本的msvs

python2安装msvs2008,python3安装msvs2010。

 

方法三:设置变量

python2 在安装扩展前执行

SET VS90COMNTOOLS =  [vcvarsall.bat所在的目录]

或者

SET VS90COMNTOOLS=%VS120COMNTOOLS%

在湖闻樟注:VS120COMNTOOLS改成你安装的msvs版本对应的

python3在安装扩展前执行

SET VS100COMNTOOLS =  [vcvarsall.bat所在的目录]

或者

SET VS100COMNTOOLS=%VS120COMNTOOLS%

在湖闻樟注:VS120COMNTOOLS改成你安装的msvs版本对应的

 

方法四:修改安装脚本

打开

[python3安装目录]Lib/distutils/msvc9compiler.py

修改MSVCCompiler函数:

vc_env = query_vcvarsall(VERSION, plat_spec)

为:

vc_env = query_vcvarsall(12.0, plat_spec)

在湖闻樟注:12.0改成你安装的msvs对应的版本号

补充:

msvs2005版本号为8.0对应环境变量VS80COMNTOOLS

msvs2008版本号为9.0对应环境变量VS90COMNTOOLS

msvs2010版本号为10.0对应环境变量VS100COMNTOOLS

msvs2012版本号为11.0对应环境变量VS110COMNTOOLS

msvs2013版本号为12.0对应环境变量VS120COMNTOOLS
----------------------------------------------------------------------------------------------------------------------
python3.5升级了distutils,默认使用_msvccompiler.py ,变动有些大,上面说的修改msvc9compiler.py的办法没有效果,另外比较推荐使用编译好的二进制包来安装,毕竟省事嘛。

转载于:https://www.cnblogs.com/lm3306/p/9279389.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装whl文件是为了解决安装基于pyproject.toml的项目时出现的错误。这些错误信息表明在安装pandas、scikit-image和lanms-neo等包时无法构建所需的wheels。 wheels是Python的二进制打包格式,能够更快地安装软件包,而不需要编译源代码。所以,安装whl文件可以避免编译错误和依赖问题。 要解决这个问题,您可以按照以下步骤进行操作: 1. 首先,确定您是否已经安装了正确版本的Microsoft Visual C++编译器。根据引用的错误信息,您需要安装Microsoft Visual C 14.0或更高版本。请确保您已经安装了正确的编译器版本。 2. 对于pandas、scikit-image和lanms-neo这些包,您可以尝试从可靠的源或官方网站下载相应的whl文件。确保下载与您的Python版本和操作系统相匹配的whl文件。 3. 在下载了whl文件后,使用pip命令来安装它们。打开命令提示符或终端窗口,并导航到存储whl文件的目录。然后,运行以下命令来安装whl文件: ``` pip install package_name.whl ``` 其中,package_name是您要安装的包的名称。 4. 如果在安装过程中仍然遇到问题,您可以尝试升级pip到最新版本,并重新运行安装命令。使用以下命令来升级pip: ``` pip install --upgrade pip ``` 通过按照以上步骤安装相应的whl文件,您应该能够解决安装pyproject.toml-based项目时出现的错误。请确保下载和安装的whl文件与您的环境兼容,并且按照正确的顺序进行安装
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值