【旁门python02】如何用setuptools搭建一个python whl包

前言

鸽了那么久终于决定把坑填完……本篇打算承接上一篇,讲讲python wheel包的创建。原则上需要涵盖的内容挺多的,但碍于篇幅只能把最相关的部分提炼出来。一般的开发者需要用到这部分内容的其实不多,但谁知道呢——也许哪一天愿意为开源社区提供自己写的程序包时,希望这篇博客能带来一定的指导。


前置准备

python的打包工具有很多,setuptools虽然已不能算是默认,但仍是目前最为流行的一种。首先,得确认自己的系统上有wheelsetuptools两个模块:

pip install wheel setuptools --user
  • setuptools是用来完成打包动作的
  • wheelsetuptools的一个衍生插件,提供一些命令行指令用于和wheel包交互

一、wheel包的种类

  • Universal wheel:带有py2.py3-none-any.whl在名字中的包。对python2和python3、操作系统等均没有要求,兼容性极好。
  • Pure-python wheel:带有py3-none-any.whlpy2-none-any.whl在名字中的包。和universal wheel相比,仅仅在python的版本上有所要求。
  • Platform wheel:对python版本和操作系统等都会有要求。创建这种类型的wheel一般意味着内部使用了一些由静态语言编写的代码(如C++)。这些代码在编译时会对平台有所要求,所以造成wheel包也会有平台依赖。

pip install在执行的时候会去寻找和当前环境兼容的版本,如果未找到兼容的版本,但是找到源发行版的话,会下载源发行版在本地进行编译安装;如果源发行版也找不到,那安装就会报错了。

二、wheel包的打包过程

2.1 pyproject.toml

pyproject.toml是在PEP518中被引入作为注明一个Py

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值