2024-06-19 06:35:05 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
path_cur=$(cd `dirname $0`; pwd)
|
|
|
|
build_type="Release"
|
2024-06-19 06:41:40 +00:00
|
|
|
# 生成目录
|
2024-06-19 06:35:05 +00:00
|
|
|
app_path="app"
|
|
|
|
# 可执行程序名
|
|
|
|
appname="train"
|
|
|
|
|
|
|
|
# 拷贝执行文件依赖库
|
|
|
|
function cpoyLibs() {
|
|
|
|
# 利用 ldd 提取依赖库的具体路径
|
|
|
|
liblist=$(ldd ./$app_path/$appname | awk '{ if (match($3,"/")){ printf("%s "), $3 } }')
|
|
|
|
# 拷贝库文件和可执行程序到目标文件夹
|
|
|
|
cp $liblist ./$app_path/lib
|
|
|
|
}
|
|
|
|
|
|
|
|
function prepare_path() {
|
|
|
|
[ -n "$1" ] && rm -rf $1
|
|
|
|
mkdir -p $1
|
|
|
|
cd $1
|
|
|
|
}
|
|
|
|
|
|
|
|
function prepare_path_new() {
|
|
|
|
if [ ! -d $1 ];then
|
|
|
|
mkdir -p $1
|
|
|
|
fi
|
|
|
|
cd $1
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#NX
|
|
|
|
function build(){
|
|
|
|
local path_build=$path_cur/build
|
|
|
|
prepare_path $path_build
|
|
|
|
|
|
|
|
if [ "$1" == $app_path ]; then
|
|
|
|
cmake -DCMAKE_BUILD_TYPE="Release" ..
|
|
|
|
else
|
2024-06-19 06:41:40 +00:00
|
|
|
cmake -DCMAKE_BUILD_TYPE="Release" ..
|
2024-06-19 06:35:05 +00:00
|
|
|
fi
|
|
|
|
|
|
|
|
make -j4
|
|
|
|
local ret=$?
|
|
|
|
cd ..
|
|
|
|
return ${ret}
|
|
|
|
}
|
|
|
|
|
|
|
|
# build with different according to the parameter, default is A300
|
|
|
|
if [ "$1" == $app_path ]; then
|
|
|
|
echo "---------正式模式----------"
|
|
|
|
if [ ! -d $1 ];then
|
|
|
|
mkdir -p $1
|
|
|
|
mkdir -p $app_path/config $app_path/lib $app_path/model $app_path/collect
|
|
|
|
mkdir -p $app_path/result $app_path/tmp $app_path/videos
|
|
|
|
fi
|
|
|
|
build $1
|
|
|
|
echo "开始拷贝软件库文件..."
|
|
|
|
cpoyLibs
|
|
|
|
else
|
|
|
|
echo "---------调试模式----------"
|
|
|
|
if [ ! -d $1 ];then
|
|
|
|
mkdir -p $1
|
|
|
|
mkdir -p $app_path/config $app_path/lib $app_path/model
|
|
|
|
mkdir -p $app_path/result $app_path/tmp $app_path/videos
|
|
|
|
fi
|
|
|
|
build
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ $? -ne 0 ]; then
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo "开始拷贝配置文件..."
|
|
|
|
# 拷贝yaml文件和xml文件
|
|
|
|
cp -f ./*.yaml ./$app_path/config
|
|
|
|
echo "-----------successfully--------------"
|
|
|
|
|
|
|
|
exit 0
|