使用 Setup 将Python 代码 打包
来源:互联网 发布:中国经济畸形 知乎 编辑:程序博客网 时间:2024/06/08 08:19
完成源码后将代码打成安装包:
1. 我的源代码结构如下:
pack
|---src
| - common ---http
---user
| - lib
| - factory.py
2. 实现setup.py
#!/usr/bin/env python3# -*- coding: utf-8 -*-from distutils.core import setupsetup( name='sdk', version='1.0', description='sdk for di input , output and param', author='sam', author_email='sam@qq.com', url='', license='No License', platforms='python 2.7', py_modules=['factory'], package_dir={'': 'pack'}, packages=['lib', 'common.http'])
执行
python setup.py sdist
setup.py 同级目录生成一个dist文件夹,里面是 sdk1.0.tar.gz
之后就可以解压
解压后安装:
python setup.py install
注:使用 setup.py没有卸载功能,如果需要卸载则要手动删除
也可使用: -- record 记录安装文件的目录
python setup.py install --record file.txt
卸载就可以使用脚本,实现自动安装和卸载
注 1:
setup.py参数说明
#python setup.py build # 编译
#python setup.py install #安装
#python setup.py sdist #生成压缩包(zip/tar.gz)
#python setup.py bdist_wininst #生成NT平台安装包(.exe)
#python setup.py bdist_rpm #生成rpm包
或者直接"bdist 包格式",格式描述如下:
#python setup.py bdist --help-formats
--formats=rpm RPM distribution
--formats=gztar gzip'ed tar file
--formats=bztar bzip2'ed tar file
--formats=ztar compressed tar file
--formats=tar tar file
--formats=wininst Windows executable installer
--formats=zip ZIP file
注2: setup参数:
- name 打包名称
- version 版本
- ....
- playforms 所支持的平台 ,例中只支持2.7
- package_dir 源码所在目录
- packages 源码目录下那些目录要被打包
- py_modules 需要打包的模块
- requires 定义依赖模块
- ...
具体参数可参见官网
引用:
https://docs.python.org/2/distutils/apiref.html
http://blog.csdn.net/langb2014/article/details/53114341
- 使用 Setup 将Python 代码 打包
- Inno Setup Compiler 将exe打包setup安装文件
- py2exe+inno setup集成打包python程序
- python中setup 打包安装包
- 将自己写的Python代码打包放到PyPI上
- Python:使用Kivy将python程序打包为apk文件
- Python:使用Kivy将python程序打包为apk文件
- [inno setup]使用inno setup 打包exe学习入门之一
- 打包工具Inno Setup的使用
- setup factory打包工具的使用
- 使用Inno Setup打包Winform程序
- 使用Inno SetUp脚本打包Winform程序
- 使用Setup Factory 给应用程序打包
- 【python】使用cx_Freeze将.py文件打包成exe文件
- Windows平台使用PyInstaller将Python脚本打包成可执行文件
- 使用Pyinstaller将python脚本打包成exe文件
- 如何将C/C++项目打包成setup文件
- python代码打包
- C++(qt)游戏实战项目:坦克大战(四)
- 职业规划-毕业两年工作现状
- The security key for this program currently stored on your system does not appear to be valid for th
- 从0开始学习 GitHub 系列之「03.Git 速成」
- Go语言学习笔记(2)-变量,指针
- 使用 Setup 将Python 代码 打包
- cocos2dx实现加载页loading页,加载进度条和加载字样
- 让不确定高度的div中的标签都垂直居中显示
- android中string.xml中%1$s、%1$d等的用法
- 玩转Eclipse
- sqlite3_get_table 使用举例
- 生成对抗网络(GAN)的理论与应用完整入门介绍
- Git使用手册:git fetch 将远程仓库的分支及分支最新版本代码拉取到本地
- 兼容问题