在 build-linux.sh 和 build-win.sh 中增加 touch application.cpp 步骤, 确保 __DATE__ 和 __TIME__ 每次构建都是最新的,日志中的编译时间 能准确反映本次构建的时间。 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
55 lines
1.5 KiB
Bash
Executable File
55 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
# ============================================================================
|
|
# Impress Voice Input — Linux 构建脚本
|
|
# 用法: ./build-linux.sh [--clean] [--release|--debug]
|
|
# ============================================================================
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
BUILD_DIR="${SCRIPT_DIR}/build_linux"
|
|
BUILD_TYPE="RelWithDebInfo"
|
|
|
|
# 解析参数
|
|
for arg in "$@"; do
|
|
case "$arg" in
|
|
--clean)
|
|
echo "清理构建目录..."
|
|
rm -rf "${BUILD_DIR}"
|
|
;;
|
|
--debug)
|
|
BUILD_TYPE="Debug"
|
|
;;
|
|
--release)
|
|
BUILD_TYPE="Release"
|
|
;;
|
|
esac
|
|
done
|
|
|
|
echo "============================================"
|
|
echo " Impress Voice Input — Linux 构建"
|
|
echo " 构建类型: ${BUILD_TYPE}"
|
|
echo "============================================"
|
|
|
|
mkdir -p "${BUILD_DIR}"
|
|
cd "${BUILD_DIR}"
|
|
|
|
echo "[1/4] 强制更新编译时间戳..."
|
|
touch "${SCRIPT_DIR}/src/app/application.cpp"
|
|
|
|
echo "[2/4] 配置 CMake..."
|
|
cmake .. -DCMAKE_BUILD_TYPE="${BUILD_TYPE}"
|
|
|
|
echo "[2/4] 配置 CMake..."
|
|
cmake .. -DCMAKE_BUILD_TYPE="${BUILD_TYPE}"
|
|
|
|
echo "[3/4] 编译..."
|
|
cmake --build . -j$(nproc)
|
|
|
|
echo "[4/4] 构建完成"
|
|
echo ""
|
|
echo "可执行文件: ${BUILD_DIR}/impress_voice_input"
|
|
echo ""
|
|
echo "运行方式:"
|
|
echo " cd ${SCRIPT_DIR} && ./run.sh"
|
|
echo " 或 LD_LIBRARY_PATH=third_party/onnxruntime/lib:third_party/portaudio/lib ${BUILD_DIR}/impress_voice_input"
|