Python重新打包现有的分发包
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python重新打包现有的分发包相关的知识,希望对你有一定的参考价值。
我在Windows 7 Enterprise上使用Python 3.6.3,当我尝试pip安装Python包“bitarray”时,输出表明需要Microsoft Visual C ++ Build Tools。我下载并安装了构建工具并安装了bitarray,没有任何问题。
这就是问题所在:我现在需要将bitarray分发给公司内没有安装Microsoft Visual C ++ Build Tools但是安装了Python(并且可以使用pip)的其他员工。
我可以简单地“重新打包”“C: Python363 Lib site-packages bitarray”(包含已编译的.pyd文件)中的bitarray文件夹,并将其设为本地包吗?这样我可以使用带有“file:///”的pip来下载包的本地副本而无需构建工具步骤吗?
另外,我是否需要将信息合并到文件夹“C: Python363 Lib site-packages bitarray-0.8.1.dist-info”中进行重新打包?
在此先感谢您的帮助!!!!斯科特
为什么不自己从源代码构建分发,而不是尝试解决已经安装的软件包?毕竟,你已经完成了设置C编译器最困难的部分,其余部分只是你必须输入的一系列命令。这是你可以做的:
- 克隆
bitarray
的存储库:$ git clone https://github.com/ilanschnell/bitarray
- 导航到克隆的存储库:
$ cd bitarray
- 签出要构建的版本标记(最新版本为0.8.1):
$ git checkout 0.8.1
- 确保安装了
wheel
以便能够构建静态滚轮:$ pip install wheel
- 构建静态轮:
$ python setup.py bdist_wheel
- 在当前的目录中创建了一个新目录
dist
,检查内部是什么:$ ls dist bitarray-0.8.1-cp36-cp36m-macosx_10_6_intel.whl
(注意:这是我在我的系统上输入的内容,在Windows上用dir
列出目录,如果你在64位系统上构建你的文件应该是bitarray-0.8.1-cp36-cp36m-win_amd64.whl
,或者在32位系统上应该是bitarray-0.8.1-cp36-cp36m-win32.whl
)。
现在,您已经构建了一个静态轮,其中包含在Windows上为Python 3.6编译的C扩展。它可以安装在Windows上,而无需在目标计算机上设置C编译器。输入
$ pip install bitarray-0.8.1-cp36-cp36m-win_amd64.whl
但请注意,此wheel文件只能在Windows上安装,并且只能安装在Python 3.6中。如果您需要为另一个设置提供一个轮子(如Windows 32位上的Python 3.5),您需要在正确的目标系统上使用正确的Python版本构建另一个轮盘文件,但步骤将是相同的。
Building without Git
如果您没有安装Git并且您不能/不想安装它,just download the zipped repository from Github,解压缩它,导航到解压缩的目录并执行步骤4-6。
以上是关于Python重新打包现有的分发包的主要内容,如果未能解决你的问题,请参考以下文章
服务器 ‘xxxx‘ 已被定义为分发服务器。若要将该服务器重新配置为分发服务器,必须首先卸载现有的分发服务
服务器 ‘xxxx‘ 已被定义为分发服务器。若要将该服务器重新配置为分发服务器,必须首先卸载现有的分发服务