当前位置:   article > 正文

mac电脑使用pyinstaller打包python脚本

mac电脑使用pyinstaller打包python脚本
pyinstaller -F template.py

出现报错"AssertionError: Executable contains code signature!"

移除签名

codesign --remove-signature /Users/f7692281/PycharmProjects/TPtestlist/transmit_v6.0.py

打包命令

pyinstaller --windowed transmit_v6.0.py

pyinstaller -w  -D transmit_v6.0.py

打包静态文件 

在网上查找了很多资料,比如将静态文件,或是引用的图片一同打包之类的,比如修改transmit_v6.0.spec里面的datas,将ip.ini文件打包进来.然后重新再次打包transmit_v6.0.spec.datas里面放置的是元祖,元祖里面的是(文件名,文件位置)

命令:

pyinstaller transmit_v6.0.spec

打包之后的效果如图,ip.ini会出现在该位置.transmit_v6.0此时是可以运行的,但是transmit_v6.0.app还是不可以运行,因为这个app里面还是不存在ip.ini,你需要手动将其放置进去.然后就可以用了

这样打包之后,发现我打包出来的APP特别的大 ,900多M......,并且将APP传给别人的电脑上面还会显示APP已经损坏.....所以最好还是创建虚拟环境,在虚拟环境里面进行打包

 创建虚拟环境步骤

1) 在某个位置创建放置虚拟环境的文件夹:env_test

2) 进入该文件夹

cd  /Users/f7692281/Desktop/env_test 

3) 创建虚拟环境,虚拟环境名为myenv

python -m venv myenv

4)激活虚拟环境 

source myenv/bin/activate

5) 在此环境下面直接安装脚本需要的第三方库 ,用镜像安装快.它提示少什么,直接装就可以了.pyinstaller也不能少.

  1. pip install numpy -i https://mirrors.aliyun.com/pypi/simple
  2. pip install pandas -i https://mirrors.aliyun.com/pypi/simple
  3. pip install openpyxl -i https://mirrors.aliyun.com/pypi/simple
  4. pip install Jinja2 -i https://mirrors.aliyun.com/pypi/simple
  5. pip install pyinstaller -i https://mirrors.aliyun.com/pypi/simple

6) 打包,打包时脚本要在虚拟环境里面,所以打包时直接输入脚本名字,不要用绝对路径拖进来,会报错(不知道为啥)

pyinstaller -w -D template.py

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/210778
推荐阅读
相关标签
  

闽ICP备14008679号