drop sqlite3 and use .log, optimize some code

This commit is contained in:
lzx
2026-01-29 16:51:06 +08:00
parent 194b062bb9
commit e9c4582e0d
47 changed files with 668 additions and 212 deletions

View File

@@ -4,11 +4,11 @@ set -e
#############################################
# 配置:修改为你的项目路径
#############################################
# 方式1手动指定路径推荐
PROJECT_DIR="$HOME/windows" # TODO: 改成你的项目实际路径
# 方式1手动指定路径如果脚本不在项目根目录
# PROJECT_DIR="/home/lizixuan/linux_client/windows-application"
# 方式2自动检测如果脚本放在项目根目录
# PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)"
# 方式2自动检测如果脚本放在项目根目录,推荐
PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)"
#############################################
# 0. 打印环境信息
@@ -35,6 +35,9 @@ sudo apt install -y cmake ninja-build
# GTK3 及相关开发包Flutter Linux GUI 需要)
sudo apt install -y libgtk-3-dev libblkid-dev liblzma-dev
# SQLite 库sqflite_common_ffi 需要)
sudo apt install -y libsqlite3-dev
# 常用工具
sudo apt install -y git curl unzip
@@ -119,7 +122,31 @@ cd "$PROJECT_DIR"
# 如果没有 linux 目录,则创建
if [ ! -d "linux" ]; then
echo "未检测到 linux 目录,执行 flutter create --platforms=linux ."
flutter create --platforms=linux .
# 从 pubspec.yaml 读取项目名(如果存在)
PROJECT_NAME="cloud_client_gui"
if [ -f "pubspec.yaml" ]; then
# 尝试从 pubspec.yaml 提取 name 字段
EXTRACTED_NAME=$(grep -E "^name:" pubspec.yaml | head -1 | sed 's/name:[[:space:]]*//' | sed 's/[[:space:]]*$//')
if [ -n "$EXTRACTED_NAME" ]; then
PROJECT_NAME="$EXTRACTED_NAME"
echo "从 pubspec.yaml 读取到项目名: $PROJECT_NAME"
fi
fi
# 使用 --project-name 参数明确指定项目名,避免目录名问题
echo "使用项目名: $PROJECT_NAME 创建 linux 平台..."
if flutter create --platforms=linux . --project-name "$PROJECT_NAME"; then
echo "linux 平台创建成功"
else
echo "警告: flutter create 执行失败"
echo "尝试不带 --project-name 参数重新执行..."
flutter create --platforms=linux . || {
echo "错误: 无法创建 linux 平台,请检查错误信息"
echo "可以尝试手动执行: flutter create --platforms=linux . --project-name cloud_client_gui"
exit 1
}
fi
else
echo "已检测到 linux 目录,跳过 flutter create。"
fi
@@ -158,4 +185,9 @@ echo
echo "然后在该目录下运行:"
echo " ./cloud_client_gui"
echo
echo "==== 运行时依赖说明 ===="
echo "如果运行时提示找不到 libsqlite3.so请确保已安装"
echo " sudo apt install -y libsqlite3-dev"
echo "或者确保系统已安装 libsqlite3.so通常在 /usr/lib/x86_64-linux-gnu/"
echo
echo "全部步骤完成。"