环境
本地python版本为:3.7.3
自带pip
需要下载pyinstaller
可使用pip install pyinstaller
打包
- 只包含基础库的py可以直接使用,在cmd中执行:
pyinstaller -F py文件路径
- 若包含第三方库。执行pyinstaller命令时,需要加-p参数来添加第三方库的路径,通过pip安装的第三方库,都在本地python的python\Lib\site-packages下,命令为
pyinstaller -F -p C:\python\Lib\site-packages py文件路径
,若需要添加多个库路径,则命令为pyinstaller -F -p C:\python\Lib\site-packages;C:\python\Lib\site-packages py文件路径
,即可完成打包。
文件路径
生成的exe文件在调用cmd的路径下的/dist/*.exe
安装whl文件出现的问题
whl文件名:pywin32-224-cp27-none-win_amd64.whl
报错:is not a supported wheel on this platform
- 可能是whl文件与python的版本没有对齐。注意whl中的cp27,cp35等,cp27指python2.7.
- 需要查看pip支持的版本和whl文件中的版本是否一致,具体查询如下:
cmd进入python: - python2.7以下命令:
import pip; print(pip.pep425tags.get_supported())
得到:[('cp27', 'none', 'win32'), ('py2', 'none', 'win32'), ('cp27', 'none', 'any'), ('cp2', 'none', 'any'), ('cp26', 'none', 'any'), ('cp25', 'none', 'any'), ('cp24', 'none', 'any'), ('cp23', 'none', 'any'), ('cp22', 'none', 'any'), ('cp21', 'none', 'any'), ('cp20', 'none', 'any'), ('py27', 'none', 'any'), ('py2', 'none', 'any'), ('py26', 'none', 'any'), ('py25', 'none', 'any'), ('py24', 'none', 'any'), ('py23', 'none', 'any'), ('py22', 'none', 'any'), ('py21', 'none', 'any'), ('py20', 'none', 'any')]
- python3.7以下命令:
import pip._internal; print(pip._internal.pep425tags.get_supported())
得到:
每一个元组对应的whl中的cp27-none-win_amd64,需匹配。