Files
avm/scripts/build.sh
T
2025-06-29 16:59:41 +08:00

56 lines
1.4 KiB
Bash

#!/bin/bash
# Build script for avm AVM project
# This script builds the OpenCV-based Around View Monitoring system
set -e # Exit on any error
echo "=== Building avm AVM Project ==="
# Get the project root directory (parent of scripts directory)
PROJECT_ROOT="$(cd "$(dirname "$0")/.." && pwd)"
cd "$PROJECT_ROOT"
# Check if we're in the right directory
if [ ! -f "CMakeLists.txt" ]; then
echo "Error: CMakeLists.txt not found. Please run this script from the project root directory."
exit 1
fi
# Check if OpenCV is installed
if ! pkg-config --exists opencv4 && ! pkg-config --exists opencv; then
echo "Error: OpenCV not found. Please install OpenCV development packages."
echo "On Ubuntu/Debian: sudo apt-get install libopencv-dev"
exit 1
fi
# Display OpenCV version
OPENCV_VERSION=$(pkg-config --modversion opencv4 2>/dev/null || pkg-config --modversion opencv 2>/dev/null)
echo "Found OpenCV version: $OPENCV_VERSION"
# Create build directory if it doesn't exist
if [ ! -d "build" ]; then
echo "Creating build directory..."
mkdir build
fi
# Change to build directory
cd build
# Configure with CMake
echo "Configuring with CMake..."
cmake ..
# Build the project
echo "Building project..."
make -j$(nproc)
# Check if build was successful
if [ -f "bin/avm" ]; then
echo "=== Build completed successfully! ==="
echo "Executable created: build/bin/avm"
else
echo "=== Build failed! ==="
exit 1
fi