70 lines
1.7 KiB
Bash
70 lines
1.7 KiB
Bash
# shellcheck disable=SC2164
|
|
# shellcheck disable=SC2046
|
|
|
|
sudo apt-get install -y build-essential
|
|
sudo apt-get install -y liblttng-ust-dev
|
|
sudo apt-get install -y lttng-tools
|
|
sudo apt install -y libboost-all-dev libssl-dev
|
|
|
|
# json
|
|
sudo apt install -y libjsoncpp-dev
|
|
|
|
# google
|
|
sudo apt install -y libgoogle-glog-dev
|
|
|
|
# vision
|
|
sudo apt install -y libeigen3-dev
|
|
sudo apt install -y libopencv-dev python3-opencv
|
|
|
|
# flann
|
|
sudo apt-get install -y libflann-dev
|
|
|
|
# ffmpeg
|
|
sudo apt install -y ffmpeg
|
|
|
|
#alas
|
|
sudo apt-get install -y libasound2-dev
|
|
|
|
# gstreamer
|
|
sudo apt install -y gstreamer1.0-plugins-good gstreamer1.0-plugins-bad
|
|
sudo apt install -y gstreamer1.0-plugins-ugly gstreamer1.0-libav
|
|
|
|
# build dependency
|
|
export MY_INSTALL_DIR=$HOME/.local
|
|
export PATH="$MY_INSTALL_DIR/bin:$PATH"
|
|
|
|
# install cmake
|
|
CMAKE_VERSION=$(cmake --version 2>/dev/null | head -n1 | awk '{print $3}')
|
|
REQUIRED_VERSION="3.30.3"
|
|
version_mismatch() {
|
|
[ "$CMAKE_VERSION" != "$REQUIRED_VERSION" ]
|
|
}
|
|
if ! command -v cmake &>/dev/null; then
|
|
echo "cmake not found, installing..."
|
|
sh assets/cmake-3.30.3-linux-x86_64.sh -- --skip-license --prefix="$MY_INSTALL_DIR" -y
|
|
elif version_mismatch; then
|
|
echo "cmake version is $CMAKE_VERSION, expected $REQUIRED_VERSION, reinstalling..."
|
|
sh assets/cmake-3.30.3-linux-x86_64.sh -- --skip-license --prefix="$MY_INSTALL_DIR" -y
|
|
else
|
|
echo "cmake version is $CMAKE_VERSION, no action needed."
|
|
fi
|
|
|
|
cd third_party
|
|
|
|
# grpc
|
|
pushd grpc
|
|
sudo apt install -y build-essential autoconf libtool pkg-config
|
|
mkdir -p cmake/build
|
|
pushd cmake/build
|
|
cmake -DgRPC_INSTALL=ON \
|
|
-DgRPC_BUILD_TESTS=OFF \
|
|
-DCMAKE_CXX_STANDARD=17 \
|
|
-DCMAKE_INSTALL_PREFIX="$MY_INSTALL_DIR" \
|
|
../..
|
|
make -j $(nproc)
|
|
make install
|
|
popd
|
|
|
|
# building finished
|
|
popd
|