mirror of
https://gitcode.com/JianFeeeee/TrulyMEM-TrueHumanMEM.git
synced 2026-09-20 08:58:15 +00:00
fix: build_linux.sh 添加 venv 降级机制,适配无 python3-venv 环境
This commit is contained in:
@ -12,12 +12,27 @@ if ! command -v python3 &> /dev/null; then
|
|||||||
echo "Error: python3 not found"; exit 1
|
echo "Error: python3 not found"; exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# ── 尝试 venv 隔离构建,失败则用系统环境 ──
|
||||||
|
USE_VENV=false
|
||||||
|
if python3 -m venv --help &>/dev/null; then
|
||||||
VENV_DIR="$PROJECT_ROOT/.venv_build"
|
VENV_DIR="$PROJECT_ROOT/.venv_build"
|
||||||
echo "Creating virtual environment: $VENV_DIR"
|
if python3 -m venv "$VENV_DIR" 2>/dev/null; then
|
||||||
python3 -m venv "$VENV_DIR"
|
|
||||||
source "$VENV_DIR/bin/activate"
|
source "$VENV_DIR/bin/activate"
|
||||||
pip install --upgrade pip
|
USE_VENV=true
|
||||||
pip install -r requirements.txt
|
echo "Using virtual environment"
|
||||||
|
pip install --upgrade pip -q
|
||||||
|
pip install -r requirements.txt -q
|
||||||
|
else
|
||||||
|
echo "Warning: venv creation failed, falling back to system Python"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "Warning: python3-venv not available, falling back to system Python"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$USE_VENV" = false ]; then
|
||||||
|
pip install -r requirements.txt --break-system-packages -q 2>/dev/null || \
|
||||||
|
pip install -r requirements.txt -q 2>/dev/null || true
|
||||||
|
fi
|
||||||
|
|
||||||
echo "Cleaning previous builds..."
|
echo "Cleaning previous builds..."
|
||||||
rm -rf dist/ build/trulymem/ 2>/dev/null || true
|
rm -rf dist/ build/trulymem/ 2>/dev/null || true
|
||||||
@ -25,13 +40,15 @@ rm -rf dist/ build/trulymem/ 2>/dev/null || true
|
|||||||
echo "================================"
|
echo "================================"
|
||||||
echo "Building TrulyMEM (TUI + Web embedded)"
|
echo "Building TrulyMEM (TUI + Web embedded)"
|
||||||
echo "================================"
|
echo "================================"
|
||||||
python -m PyInstaller --clean build/trulymem.spec --noconfirm
|
python3 -m PyInstaller --clean build/trulymem.spec --noconfirm
|
||||||
|
|
||||||
echo "================================"
|
echo "================================"
|
||||||
echo "===== Build Complete ====="
|
echo "===== Build Complete ====="
|
||||||
echo "Binary: dist/TrulyMEM"
|
echo "Binary: dist/TrulyMEM"
|
||||||
ls -la dist/
|
ls -la dist/
|
||||||
|
|
||||||
deactivate
|
if [ "$USE_VENV" = true ]; then
|
||||||
|
deactivate 2>/dev/null || true
|
||||||
rm -rf "$VENV_DIR"
|
rm -rf "$VENV_DIR"
|
||||||
|
fi
|
||||||
echo "Build finished successfully!"
|
echo "Build finished successfully!"
|
||||||
Reference in New Issue
Block a user