-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup_env.sh
More file actions
88 lines (76 loc) · 2.42 KB
/
Copy pathsetup_env.sh
File metadata and controls
88 lines (76 loc) · 2.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#!/bin/bash
# 车载语音助手环境设置脚本
# Vehicle Voice Assistant Environment Setup Script
set -e
echo "=========================================="
echo "车载语音助手 - 环境设置"
echo "Vehicle Voice Assistant - Environment Setup"
echo "=========================================="
# 检查Python版本
PYTHON_VERSION=$(python3 --version 2>&1 | cut -d' ' -f2 | cut -d'.' -f1,2)
REQUIRED_VERSION="3.11"
echo "检查Python版本..."
if [ "$(printf '%s\n' "$REQUIRED_VERSION" "$PYTHON_VERSION" | sort -V | head -n1)" != "$REQUIRED_VERSION" ]; then
echo "错误: 需要Python $REQUIRED_VERSION或更高版本,当前版本: $PYTHON_VERSION"
exit 1
fi
echo "Python版本: $PYTHON_VERSION ✓"
# 创建虚拟环境
VENV_DIR=".venv"
if [ ! -d "$VENV_DIR" ]; then
echo "创建虚拟环境..."
python3 -m venv $VENV_DIR
echo "虚拟环境创建成功 ✓"
else
echo "虚拟环境已存在 ✓"
fi
# 激活虚拟环境
echo "激活虚拟环境..."
source $VENV_DIR/bin/activate
# 升级pip
echo "升级pip..."
pip install --upgrade pip
# 安装依赖
echo "安装项目依赖..."
pip install -e ".[dev]"
# 检查PyAudio依赖(macOS需要portaudio)
echo "检查音频依赖..."
if [[ "$OSTYPE" == "darwin"* ]]; then
if ! command -v brew &> /dev/null; then
echo "警告: 未检测到Homebrew,PyAudio可能需要手动安装portaudio"
echo "请运行: brew install portaudio"
else
if ! brew list portaudio &> /dev/null; then
echo "安装portaudio..."
brew install portaudio
else
echo "portaudio已安装 ✓"
fi
fi
elif [[ "$OSTYPE" == "linux-gnu"* ]]; then
echo "Linux系统,请确保已安装: sudo apt-get install portaudio19-dev"
fi
# 复制环境变量示例文件
if [ ! -f ".env" ]; then
echo "创建.env文件..."
cp .env.example .env
echo ".env文件已创建,请编辑配置 ✓"
else
echo ".env文件已存在 ✓"
fi
# 创建测试目录
if [ ! -d "tests" ]; then
echo "创建测试目录..."
mkdir -p tests
touch tests/__init__.py
fi
echo ""
echo "=========================================="
echo "环境设置完成!"
echo "=========================================="
echo ""
echo "下一步操作:"
echo "1. 激活虚拟环境: source .venv/bin/activate"
echo "2. 编辑.env文件,配置AWS凭证和API密钥"
echo "3. 运行开发服务器: uvicorn backend.main:app --reload"
echo ""