python的setup.py文件及其常用命令
python的setup.py文件及其常用命令
-
上传者:tingting1718
我也要“分享赚钱”
- 2014/7/7
- 关注(286)
- 评论(0)
声明:此内容仅代表网友个人经验或观点,不代表本网站立场和观点。
编写setup.py文件,获取帮助:python setup.py --help-commands
[python]
Standard commands:
build build everything needed to install
build_py "build" pure Python modules (copy to build directory)
build_ext build C/C++ extensions (compile/link to build directory)
build_clib build C/C++ libraries used by Python extensions
build_scripts "build" scripts (copy and fixup #! line)
clean clean up temporary files from 'build' command
install install everything from build directory
install_lib install all Python modules (extensions and pure Python)
install_headers install C/C++ header files
install_scripts install scripts (Python or otherwise)
install_data install data files
sdist create a source distribution (tarball, zip file, etc.)
register register the distribution with the Python package index
bdist create a built (binary) distribution
bdist_dumb create a "dumb" built distribution
bdist_rpm create an RPM distribution
bdist_wininst create an executable installer for MS Windows
upload upload binary package to PyPI
check perform. some checks on the package
Extra commands:
rotate delete older distributions, keeping N newest files
develop install package in 'development mode'
setopt set an option in setup.cfg or another config file
saveopts save supplied options to setup.cfg or other config file
egg_info create a distribution's .egg-info directory
install_egg_info Install an .egg-info directory for the package
alias define a shortcut to invoke one or more commands
easy_install Find/get/install Python packages
bdist_egg create an "egg" distribution
test run unit tests after in-place build
standard commands(标准命令)是distutils内建命令,而Extra commands(附加命令)是像
setuptools这样的第三方包创建的。
命令详解:
1.sdist:用来创建一个源码包,在windows下为zip格式,linux下为tag.gz格式 。
setup.py示例:
from setuptools import setup
setup(name='xxx',version='0.1.1')
打包命令:python setup.py sdist
distutils将浏览包的路径,查找包含在档案中的文件,包括:
1)所有py_modules、packages和scripts选项隐含的python源文件
2)所有在ext_modules选项中列出的C源文件
3)符合test/test*.py模式的文件
4)README、README.txt、setup.py和setup.cfg文件
如果需要包含更多文件,那么可以使用MANIFEST.in文件模版,示例如下:
include xx.txt
include yy/xx.txt
....
2.bdist_egg:用来创建一个二进制分发版本,经常用来替代基于bdist生成的模式
3.install:安装包到python中。另外,他还可能会安装在setup.py中的install_requires定义的
相关模块,例如:
install_requires=['...','...']
删除一个包:1)删除这个包所创建的文件,2)删除在site-packages文件夹easy-install.pth文
件中列举的所有引用。
4.develop:编译并且在适当的位置安装包,然后添加一个简单的链接到python site-packages文
件夹中,可以使用显式的-u选项删除包,例如:
python setup.py develop
python setup.py develop -u
使用该方式比其他方式安装包更好一些
5.创建一个新命令:这是由setuptools引入的,是一种将包定义为插件的简单方法,示例:
...entry_points='''
[distutils.commands]
my_command=my.command.module.Class
python的setup.py文件及其常用命令相关推荐
- 花了两天,终于把 Python 的 setup.py 给整明白了
作者 | 写代码的明哥 来源 | Python编程时光 头图 | 下载于视觉中国 为什么需要对项目分发打包 平常我们习惯了使用 pip 来安装一些第三方模块,这个安装过程之所以简单,是因为模块开发者为 ...
- python中setup_花了两天,终于把 Python 的 setup.py 给整明白了
给大家推荐本我自己写的电子书<PyCharm中文指南>,把各种 PyCharm 的高效的使用技巧用GIF动态图的形式展示出来.有兴趣的可以看它的在线文档:PyCharm 中文指南 2.0 ...
- 【python】setup.py的作用
简而言之,setup.py是python模块分发与安装的指导文件 有了setup.py文件,运行下面这条命令,可以进行模块的安装. python setup.py install 下面给出setup. ...
- python中setup是什么意思_『Python』setup.py简介
setup.py应用场合 网上见到其他人这样介绍: 假如我在本机开发一个程序,需要用到python的redis.mysql模块以及自己编写的redis_run.py模块.我怎么实现在服务器上去发布该系 ...
- Python: 如何将py文件转成exe文件?
Python: 如何将py文件转成exe文件? 1.安装PyInstaller模块 pip install PyInstaller 2.将py文件打包成exe执行文件 找到需要打包的py文件所在路径, ...
- Python怎么运行py文件,编程入门指南
1.摘要 本文使用以下四种方法运行py文件:①使用命令行运行py文件,具体为先切换到对应路径,再输入"python 文件名.py ":②以PowerShell方式打开路径运行py文 ...
- SVN:安装svn进行上传和检出文件的常用命令
QUESTION:SVN:安装svn进行上传和检出文件的常用命令 ANWSER: 1.将文件checkout到本地目录svn checkout path(path是服务器上的目录) 例如:svn ch ...
- mysql 导入.sql文件_MySQL导入.sql文件及常用命令
MySQL导入.sql文件及常用命令 在MySQL Qurey Brower中直接导入*.sql脚本,是不能一次执行多条sql命令的,在mysql中执行sql文件的命令: mysql> so ...
- python中执行py文件出错(提示File “<stdin>”,line 1,SyntaxError:invalid syntax)
python中执行py文件出错(提示File "<stdin>",line 1,SyntaxError:invalid syntax) 解决办法: 上图中已通过输入py ...
最新文章
- 完整复现何恺明ICCV获奖论文结果并开源 !(附论文开源代码)
- 149.从网络的作用范围分类 150.使用范围分类 151.拓扑结构分类
- 通过js 判断当前应用是什么浏览器【借鉴转载】
- intellij存放插件的路径(转载)
- 【Java数据结构与算法】第九章 顺序查找、二分查找、插值查找和斐波那契查找
- bzoj1385 [Baltic2000]Division expression
- eclipse中引入聚合工程
- mysql gtid 主键冲突_MySQL Last_SQL_Errno: 1062----经典错误,主键冲突
- 【Arduino 项目篇】智能窗户控制系统(附录:简单红绿灯制作)
- EHCache的使用教程
- 软考- 高级信息系统项目管理师,第一章 信息化与信息系统
- 基于 CIM 的智慧园区框架
- php加cnzz,Vue单页面中添加cnzz统计
- 第十六周项目3函数指针调用函数 吃饭睡觉打豆豆
- 奈奎斯特定理和香农定理
- 如何用几何画板中绘制三角形内切圆
- 星际战甲服务器维护时间,星际战甲 官网:2月4日服务器维护结束公告
- APP 合规讲堂 - 收集使用个人信息的目的、方式、范围发生变化时,是否以适当方式通知用户(五)
- 做好这三步让你云主机更安全!
- 程序员学历不好是硬伤?苹果公司 50% 员工没大学学历