#!/bin/bash # 全局变量 LIBSDIR=${PROJECT_PATH}/libs/ # Config CONFIG_SUPPORT_ALSA=true CONFIG_SUPPORT_FFMPEG=true # Code Begin cd ${PROJECT_PATH}/build # 下载cmake wget -c "192.168.1.2:8021/sdk_firefly_rk3328_v2.5.1/buildtools/cmake-3.13.0-Linux-x86_64.tar.gz" rm -rf cmake-3.13.0-Linux-x86_64 tar -xvf cmake-3.13.0-Linux-x86_64.tar.gz mv cmake-3.13.0-Linux-x86_64 cmake CMAKE_BIN=${PROJECT_PATH}/build/cmake/bin/cmake # 下载依赖库 # CONFIG_SUPPORT_ALSA if [ "$CONFIG_SUPPORT_ALSA" = true ]; then wget -c "192.168.1.2:8021/sdk_firefly_rk3328_v2.5.1/buildtools/libasound2_dev1.1.3-5ubuntu0.6.tar.gz" rm -rf ${LIBSDIR}/alsa rm -rf libasound2_dev1.1.3-5ubuntu0.6 tar -xvf libasound2_dev1.1.3-5ubuntu0.6.tar.gz mkdir -p ${LIBSDIR}/alsa/pkgconfig/ mkdir -p ${LIBSDIR}/alsa/include/sys/ mkdir -p ${LIBSDIR}/alsa/lib/ mkdir -p ${LIBSDIR}/alsa/include/sys/ mv libasound2_dev1.1.3-5ubuntu0.6/unpack/usr/lib/aarch64-linux-gnu/libasound.* ${LIBSDIR}/alsa/lib/ mv libasound2_dev1.1.3-5ubuntu0.6/unpack/usr/lib/aarch64-linux-gnu/pkgconfig/alsa.pc ${LIBSDIR}/alsa/pkgconfig/ mv libasound2_dev1.1.3-5ubuntu0.6/unpack/usr/include/alsa ${LIBSDIR}/alsa/include/ mv libasound2_dev1.1.3-5ubuntu0.6/unpack/usr/include/sys/* ${LIBSDIR}/alsa/include/sys/ PUBLIC_LINK_DIRECTORIES="${PUBLIC_LINK_DIRECTORIES};${LIBSDIR}/alsa/lib" PUBLIC_INCLUDE_DIRECTORIES="${PUBLIC_INCLUDE_DIRECTORIES};${LIBSDIR}/alsa/include" fi # CONFIG_SUPPORT_FFMPEG if [ "$CONFIG_SUPPORT_FFMPEG" = true ]; then wget -c "192.168.1.2:8021/sdk_firefly_rk3328_v2.5.1/buildtools/ffmpeg-4.1.10-aarch64-20230301.tar.gz" rm -rf ${LIBSDIR}/ffmpeg tar -xvf ffmpeg-4.1.10-aarch64-20230301.tar.gz mv ffmpeg-4.1.10-aarch64-20230301 ${LIBSDIR}/ffmpeg PUBLIC_LINK_DIRECTORIES="${PUBLIC_LINK_DIRECTORIES};${LIBSDIR}/ffmpeg/lib" PUBLIC_INCLUDE_DIRECTORIES="${PUBLIC_INCLUDE_DIRECTORIES};${LIBSDIR}/ffmpeg/include" fi echo "PUBLIC_LINK_DIRECTORIES=${PUBLIC_LINK_DIRECTORIES}" echo "PUBLIC_INCLUDE_DIRECTORIES=${PUBLIC_INCLUDE_DIRECTORIES}" # 构造build.sh echo "${CMAKE_BIN} ../ \\" >${PROJECT_PATH}/build/build.sh echo "-DCMAKE_C_COMPILER=aarch64-linux-gnu-gcc -DPUBLIC_LINK_DIRECTORIES='${PUBLIC_LINK_DIRECTORIES}' \\" >>${PROJECT_PATH}/build/build.sh echo "-DCMAKE_CXX_COMPILER=aarch64-linux-gnu-g++ -DPUBLIC_INCLUDE_DIRECTORIES='${PUBLIC_INCLUDE_DIRECTORIES}' \\" >>${PROJECT_PATH}/build/build.sh chmod +x ${PROJECT_PATH}/build/build.sh