Initial commit.

This commit is contained in:
luocai
2024-03-12 14:46:37 +08:00
commit a66b965087
95 changed files with 39764 additions and 0 deletions

123
resources/build.sh Executable file
View File

@ -0,0 +1,123 @@
#!/bin/bash
cross_compile=true
TARGET_IP="192.168.8.115"
TARGET_PATH="/data/sdcard/PassengerStatistics"
base_path=$(pwd)
libraries_root="/opt/Libraries"
if [[ $base_path == /home/* ]]; then
build_path=${base_path}/build
else
build_path=/tmp/build
fi
echo "build directory: $build_path"
function cmake_scan() {
if [ $cross_compile = true ]; then
toolchain_file=-DCMAKE_TOOLCHAIN_FILE=resources/toolchain.cmake
else
toolchain_file="-DCROSS_BUILD=OFF"
fi
if [ ! -d ${build_path} ]; then
mkdir ${build_path}
fi
cmake \
-G Ninja \
-S ${base_path} \
-B ${build_path} \
$toolchain_file \
-DCMAKE_BUILD_TYPE=Debug
}
function build() {
if [ ! -f "${build_path}/CMakeCache.txt" ]; then
cmake_scan
fi
if [ $? -ne 0 ]; then
exit 1
fi
cmake \
--build ${build_path} \
--target all
if [ $? -ne 0 ]; then
exit 1
fi
if [ $cross_compile = true ]; then
deploy
fi
}
function init() {
if [ -n "$1" ]; then
TARGET_IP=$1
fi
echo "deploy libs to target $TARGET_IP..."
BOOST_LIBDIR=/opt/aarch64-v01c01-linux-gnu-gcc/lib/boost_1_84_0/lib
chmod 600 resources/ssh_host_rsa_key_ok
ssh -i resources/ssh_host_rsa_key_ok root@${TARGET_IP} "mount -o remount rw /;mount -o remount rw /system/"
echo "put ${base_path}/resources/authorized_keys /system/.ssh" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
echo "put /opt/aarch64-v01c01-linux-gnu-gcc/lib/gdb-10.2/bin/gdbserver /system/bin" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_date_time* /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_regex* /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_log_setup.so.1.84.0 /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_log.so.1.84.0 /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_chrono.so.1.84.0 /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_filesystem.so.1.84.0 /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_atomic.so.1.84.0 /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_container.so.1.84.0 /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_thread.so.1.84.0 /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_url.so.1.84.0 /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_json.so.1.84.0 /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
# echo "put ${BOOST_LIBDIR}/libboost_program_options.so.1.84.0 /system/lib" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
ssh -i resources/ssh_host_rsa_key_ok root@${TARGET_IP} "echo 'mount -o remount rw /' >> /etc/profile"
ssh -i resources/ssh_host_rsa_key_ok root@${TARGET_IP} "echo 'mount -o remount rw /system/' >> /etc/profile"
ssh -i resources/ssh_host_rsa_key_ok root@${TARGET_IP} "echo 'export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/system/lib' >> /etc/profile"
}
function deploy() {
if [ -n "$1" ]; then
TARGET_IP=$1
fi
echo "deploy to target $TARGET_IP, path: ${TARGET_PATH} ..."
echo "put ${build_path}/Main/PassengerStatistics ${TARGET_PATH}" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
echo "put ${build_path}/Tools/VideoRecoder/VideoRecoder ${TARGET_PATH}" | sftp -i resources/ssh_host_rsa_key_ok root@${TARGET_IP}
ssh -i resources/ssh_host_rsa_key_ok root@${TARGET_IP} "sync"
}
function clean() {
if [ -d ${build_path} ]; then
rm -fr ${build_path}
fi
}
function main() {
local cmd=$1
shift 1
case $cmd in
build)
build
;;
scan)
cmake_scan
;;
clean)
clean
;;
deploy)
deploy $@
;;
init)
init $@
;;
*)
build
;;
esac
}
main $@

View File

@ -0,0 +1,27 @@
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEAnqnYt7KJAQ5bhO/MgyWUg6QV5ICWbQX/cqzxpKKPyQQuJbUz
ML2lKPz5ogsv+pn7Hgh+SvCSN6iF/9Rtr5fD5I8COZxLlWbC3fz6J+2hPtvjCvdI
sMe0PvKxUa7vsujnUzkwpBjRcHG/gBF0P6UWvZBVbtn6jwP9ufYcAI7jYMI3YBk5
PNOowdcAoRiwTe2KnJzQNj2ztUE6VFgo3U5gyoGKfxNDi8P2aMWW3xARLJHh3hbR
Ztmwz8eDWD9L2c6fn61t9yqpyCRepE33+yC7m1Jdgxx+FWQBBfExwJaSBbWXyT1f
13v4ElSJXk4zWkeB1ddv76MZqDM9kRLJB/1WcQIDAQABAoIBAArexBRBzRUfcLG4
5CAQEQ67zSwsiyHJCWlH4/5NjOBOwwKeWXV7aLdYLZomfhEDP6sdFdn4hWv+xb9z
RFiFY0xjZ9melacUtUEUNedKZoOx+OolavuBkx3E7tUT0SRGxKJ1BpoXgTHc+SvD
Bl3d56LxIolHsdzefyGgdOas43Mbf6RHbAnXA65VyYf/k7fY4GkrO8/hKTXos32R
fNV0OD8qq8+KTwgnYXBKrjbie6N5XmOS9IcLFNC8F+0PC5NO+xzOk1McnmMux7t9
EwUj8/VXAYZPFRkEZdhmdzMgs9dpT9n+L13XppJLAAGEvFySFOGjEz2HWT7Hf5qB
z/ct9ukCgYEAzjV7V82ueeUTqMM8Hm6RV8MwpJxVwUABOQ934DuBO/p8oMqy9qlA
V02oJVnA5gMhCKKSr3dZa4+JG3BubrOh9tGEcw4pXIYEAAB6qWxsyHhNPcTrjYNS
mF5TFKgfY9uJ4p2b+YKYAuwyucdQf7kNQTEz/eYHOkardfGF00dlAo8CgYEAxPlo
nCUxaWW+rPI1wiP5F0BMhxrR4H592BajQQ1i/3IBUny43rRO2Sqd0E4xQzmTaGbi
qJtBGvS0DGMHOHfJ/5ha6xPiUFk1TJuRtb5P/uwdtJe6YZHeYz/yEDu07hKdUySs
J7oXlxORxcDphmYiVlM5ARy7h3SlLZEaGocglv8CgYAJWE8gqYeQqpr7eO2Oi4A2
s/fOXe9c9KOZjGPoW4n9x9pCBy2ZFA6AZlqKZsjhI58pnwR6wzPgNf8GqU+34Jgk
cVZJSIkDUmd4AI2OhAViCGGnvPbX0O27TfsB4qSZh+d1x6K76fktmLqrxKaXQzGg
lLRAe140e+NlUu63pnKjbQKBgB6A1S9hHx7IT9fuhl6zPW7ZWUCO6bOPQyPElbGM
Rily2TuR7vsmBxPgYqIQidZ0Qxym2jDsIg/vlzZX25VmD5USXfoLkT+KIRPk/5Ka
jz7WB9+go49ajIroKy9SX7mCjnSCuFpKmj6eHDP4pPFYPbcKmkhOz8exS6cb0mQL
SwO3AoGAYhzb7EHOTDfhtJQ0d49/8jUXprrGdExs2u88Gv8WjLsLaMm9hmNzY13M
i2wkM1ZOZag1XwvznVdLoM7lt62evtnocnEIysiiNaryoPFw/NCndNNG6mealVut
1Xr3rUQS9HOYeIYW5IFUfCv7aMFnEqd6AWdvWJ69uMIt7Wgp5yo=
-----END RSA PRIVATE KEY-----

20
resources/toolchain.cmake Normal file
View File

@ -0,0 +1,20 @@
set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_PROCESSOR arm)
# which compilers to use for C and C++
set(CMAKE_C_COMPILER aarch64-v01c01-linux-gnu-gcc)
set(CMAKE_CXX_COMPILER aarch64-v01c01-linux-gnu-g++)
# where is the target environment located
# set(CMAKE_FIND_ROOT_PATH /usr/i586-mingw32msvc
# /home/alex/mingw-install)
# adjust the default behavior of the FIND_XXX() commands:
# search programs in the host environment
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
# search headers and libraries in the target environment
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
# set(BOOST_ROOT /opt/toolchains/Libraries/boost_1_83_0)