首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >‘`pip install’是否尊重用于构建Python的编译器版本?

‘`pip install’是否尊重用于构建Python的编译器版本?
EN

Stack Overflow用户
提问于 2019-03-18 09:27:04
回答 3查看 499关注 0票数 0

pip install是否总是使用编译当前版本的编译器构建扩展模块?

例如,这篇博客文章解释说,numpy包使用C代码,必须根据与Python本身相同的编译器编译C代码:

Python2.7.13(缺省值,2017年8月21日,11:46:40) MSC v.1900 64位(AMD64) on win32

告诉我们使用了哪个编译器。必须根据相同的版本编译numpy和其他包。

EN

回答 3

Stack Overflow用户

发布于 2020-12-11 16:39:30

是的!最初的pip构建在distutils默认情况下强制执行扩展模块之上,将相同的编译器作为解释器本身编译。目前,它主要是从预置的车轮安装软件包(这些车轮反过来也是在distutils的帮助下构建的),而且软件包仍然需要使用setuptools才能构建扩展模块。

在Windows piler上,也有被迫做同样的事 (或者,自从Python3.5,兼容)。在类似Unix的关联编译器和链接器标志上,以前用于编译Python 也将被使用以编译扩展。

请注意,这是更多的方便和保障,而不是一个要求。当使用另一个编译器版本构建除某些特殊情况外时,Python应该工作得很好。

票数 1
EN

Stack Overflow用户

发布于 2019-03-18 09:30:12

Pip优先考虑您路径上的版本。Pip3和Pip用于区分这两个版本。

https://docs.python.org/2/installing/index.html

票数 0
EN

Stack Overflow用户

发布于 2019-03-18 13:14:47

pip install从不安装编译器。在运行pip install之前,必须有编译器。

请参阅https://wiki.python.org/moin/WindowsCompilers以了解您需要为不同版本的Python安装哪个版本的VC。

安装预编译轮要简单得多。说numpy有很多预编好的轮子。目前,MacOS 64位、Linux32和64位、Windows32和64位上的Python2.7、3.5、3.6和3.7都有二进制文件。只需键入pip install numpy,您的pip就会自动确定它在哪个平台上运行,并下载并安装正确的轮子。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55218142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档