将python程序打包为应用程序。pyinstaller将程序代码打包为app,再使用create-dmg将app压缩为磁盘文件,可解压安装。

Mac图标生成方式

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/sh

output_path=~/tmp.iconset

# the convert command comes from imagemagick
for size in 16 32 64 128 256; do
#half="$(($size / 2))"
sips -z $size $size app.png --out $output_path/icon_${size}x${size}.png
sips -z $size $size app.png --out $output_path/icon_${size}x${size}@2x.png
done

iconutil -c icns $output_path

APP打包

拿labelImg举例:labelImg

1
2
3
4
5
# 默认图标
pyinstaller -w --clean --hidden-import=pyqt5 --hidden-import=lxml -p ./libs -p ./ -n "labelImg" labelImg.py

# 指定图标
pyinstaller -w --clean --hidden-import=pyqt5 --hidden-import=lxml -i resources/icons/tmp.icns -p ./libs -p ./ -n "labelImg" labelImg.py

DMG打包

1
2
3
npm install -g create-dmg

create-dmg labelImg.app ./

打开打包好的dmg文件,将labelImg.app拖入/Applications目录内即可。