# 花了两天,终于把 Python 的 setup.py 给整明白了
出处:花了两天,终于把 Python 的 setup.py 给整明白了 - 知乎
要点(哪些地方值得注意):
- python 用于打包的相关库的历史,比如 setuptools,distribute,distutils 等。
- 源代码包和二进制包的区别,以及 egg 形式和 wheel 形式的区别。
- setup 函数中的若干参数,包括但不限于:classifiers,package_data,data_files,install_requires,entry_points,scripts,cmdclass 这些参数。
- 用 setup.py 构建源码发布包以及不同平台的二进制分发包。
- 将包发布到 Pypi,使得其他人能下载使用。
# Python | Conda pack 进行环境打包
出处:Python | Conda pack 进行环境打包 - 知乎
要点(哪些地方值得注意):
- 安装 conda-pack。
- 在源计算机上用 conda pack 将虚拟环境打包为一个压缩包。
- 在目标计算机(windows 或 linux)根据步骤解包并激活虚拟环境。
# Python PyInstaller 打包教程(Windows)
出处:Python PyInstaller 打包教程(Windows) - 知乎
要点(哪些地方值得注意):
--add-data参数在 windows 和 linux 的区别。- -n 参数指定打包后 exe 的名字。
- pyinstaller 命令运行后输出 dist 目录(成品,包含 exe 的目录)、build 目录(临时)以及.spec 文件(构建用的配置)。
- 用
--window(--w)参数在打包时隐藏 GUI 控制台。 - 用
--add-data和--add-binary在打包时复制资源。 - 用
--path添加搜索路径。
