98 lines
2.8 KiB
Bash
98 lines
2.8 KiB
Bash
#!/bin/bash
|
||
|
||
################################################################################
|
||
# 玩玩云上传工具打包脚本 (Linux版本)
|
||
################################################################################
|
||
|
||
set -e
|
||
|
||
echo "========================================"
|
||
echo "玩玩云上传工具打包脚本"
|
||
echo "========================================"
|
||
echo ""
|
||
|
||
# 颜色定义
|
||
RED='\033[0;31m'
|
||
GREEN='\033[0;32m'
|
||
YELLOW='\033[1;33m'
|
||
NC='\033[0m'
|
||
|
||
# 检查Python是否安装
|
||
if ! command -v python3 &> /dev/null; then
|
||
echo -e "${RED}[错误] 未检测到Python 3,请先安装Python 3.7+${NC}"
|
||
exit 1
|
||
fi
|
||
|
||
echo -e "${GREEN}Python版本:${NC} $(python3 --version)"
|
||
echo ""
|
||
|
||
# 进入上传工具目录
|
||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
cd "$SCRIPT_DIR"
|
||
|
||
echo "[1/4] 安装依赖包..."
|
||
pip3 install -r requirements.txt --quiet || {
|
||
echo -e "${RED}[错误] 依赖安装失败${NC}"
|
||
exit 1
|
||
}
|
||
echo -e "${GREEN}✓ 依赖安装完成${NC}"
|
||
|
||
echo ""
|
||
echo "[2/4] 安装PyInstaller..."
|
||
pip3 install pyinstaller --quiet || {
|
||
echo -e "${RED}[错误] PyInstaller安装失败${NC}"
|
||
exit 1
|
||
}
|
||
echo -e "${GREEN}✓ PyInstaller安装完成${NC}"
|
||
|
||
echo ""
|
||
echo "[3/4] 打包程序..."
|
||
|
||
# 检测操作系统
|
||
OS_TYPE=$(uname -s)
|
||
|
||
if [[ "$OS_TYPE" == "Linux" ]]; then
|
||
echo -e "${YELLOW}注意: 在Linux系统上打包将生成Linux可执行文件${NC}"
|
||
echo -e "${YELLOW}如需Windows exe文件,请在Windows系统上运行 build.bat${NC}"
|
||
echo ""
|
||
|
||
# 打包为Linux可执行文件
|
||
pyinstaller --onefile --name="wanwanyun-upload-tool" upload_tool.py || {
|
||
echo -e "${RED}[错误] 打包失败${NC}"
|
||
exit 1
|
||
}
|
||
|
||
# 重命名并添加执行权限
|
||
mv dist/wanwanyun-upload-tool "dist/玩玩云上传工具" 2>/dev/null || true
|
||
chmod +x "dist/玩玩云上传工具" 2>/dev/null || true
|
||
|
||
elif [[ "$OS_TYPE" == MINGW* ]] || [[ "$OS_TYPE" == MSYS* ]] || [[ "$OS_TYPE" == CYGWIN* ]]; then
|
||
echo "检测到Windows环境,打包为Windows exe..."
|
||
pyinstaller --onefile --windowed --name="玩玩云上传工具" --icon=NONE upload_tool.py || {
|
||
echo -e "${RED}[错误] 打包失败${NC}"
|
||
exit 1
|
||
}
|
||
else
|
||
echo -e "${YELLOW}未识别的操作系统: $OS_TYPE${NC}"
|
||
echo "尝试打包..."
|
||
pyinstaller --onefile --name="wanwanyun-upload-tool" upload_tool.py || {
|
||
echo -e "${RED}[错误] 打包失败${NC}"
|
||
exit 1
|
||
}
|
||
fi
|
||
|
||
echo -e "${GREEN}✓ 打包完成${NC}"
|
||
|
||
echo ""
|
||
echo "[4/4] 清理临时文件..."
|
||
rm -rf build
|
||
rm -f *.spec
|
||
echo -e "${GREEN}✓ 清理完成${NC}"
|
||
|
||
echo ""
|
||
echo "========================================"
|
||
echo -e "${GREEN}打包完成!${NC}"
|
||
echo "输出目录: dist/"
|
||
ls -lh dist/ | tail -n +2 | awk '{print " - " $9 " (" $5 ")"}'
|
||
echo "========================================"
|