build.sh 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #!/bin/bash
  2. # 获取脚本所在目录
  3. SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
  4. # 获取项目根目录(当前目录的上三级目录,即backend目录)
  5. PROJECT_ROOT="$(cd "$SCRIPT_DIR/../../../../" && pwd)"
  6. # 检查项目根目录是否存在
  7. if [ ! -d "$PROJECT_ROOT" ]; then
  8. echo "Error: Project root directory not found"
  9. exit 1
  10. fi
  11. echo "Project root directory: $PROJECT_ROOT"
  12. # 设置runtime目录路径为项目根目录下的runtime目录
  13. RUNTIME_DIR="$PROJECT_ROOT/runtime"
  14. # 进入脚本所在目录
  15. cd "$SCRIPT_DIR" || exit 1
  16. # 执行make命令
  17. echo "Building lib_news.so..."c
  18. make clean
  19. if ! make; then
  20. echo "Error: Build failed"
  21. exit 1
  22. fi
  23. # 检查编译结果是否存在
  24. if [ ! -f "lib_news.so" ]; then
  25. echo "Error: lib_news.so not found after build"
  26. exit 1
  27. fi
  28. # 创建runtime目录(如果不存在)
  29. mkdir -p "$RUNTIME_DIR"
  30. # 移动编译结果到runtime目录
  31. echo "Moving lib_news.so to runtime directory..."
  32. mv lib_news.so "$RUNTIME_DIR/"
  33. echo "Build completed successfully. lib_news.so moved to $RUNTIME_DIR/"
  34. make clean