init commit

This commit is contained in:
EricX-Zhao
2026-02-11 17:54:06 +03:00
commit c15a3552ae
18 changed files with 1593 additions and 0 deletions
@@ -0,0 +1,69 @@
FROM osrf/ros:jazzy-desktop-full AS builder
ARG DEBIAN_FRONTEND=noninteractive
# catkin-tools
RUN apt-get update && apt-get install -y \
ca-certificates \
gnupg \
sudo \
curl \
wget \
&& rm -rf /var/lib/apt/lists/*
# PX4 dependencies
WORKDIR /root
RUN wget https://raw.githubusercontent.com/PX4/PX4-Autopilot/main/Tools/setup/ubuntu.sh \
&& wget https://raw.githubusercontent.com/PX4/PX4-Autopilot/main/Tools/setup/requirements.txt \
&& chmod +x /root/ubuntu.sh \
&& ./ubuntu.sh \
&& rm -rf /var/lib/apt/lists/* \
&& rm /root/requirements.txt /root/ubuntu.sh
# COPY requirements.txt /requirements.txt
# COPY ubuntu.sh /ubuntu.sh
# RUN /ubuntu.sh && rm -rf /var/lib/apt/lists/* && rm /requirements.txt /ubuntu.sh
# for WSL2 GPU Support
ENV LD_LIBRARY_PATH=/usr/lib/wsl/lib
RUN apt update && apt install -y \
mesa-utils \
vainfo \
mesa-va-drivers \
vim \
net-tools \
openssh-server \
libasio-dev \
python3-future \
libgeographiclib-dev \
ros-jazzy-eigen-stl-containers \
ros-jazzy-diagnostic-updater \
ros-jazzy-rmw-zenoh-cpp \
ros-jazzy-ros-gz \
&& rm -rf /var/lib/apt/lists/*
# ceres
WORKDIR /root
RUN apt update && apt install -y \
libgoogle-glog-dev \
libgflags-dev \
libatlas-base-dev \
libeigen3-dev \
libsuitesparse-dev \
&& rm -rf /var/lib/apt/lists/*
RUN wget https://github.com/ceres-solver/ceres-solver/archive/refs/tags/2.1.0.tar.gz \
&& tar -zxf 2.1.0.tar.gz \
&& cd ceres-solver-2.1.0 \
&& mkdir build && cd build \
&& cmake .. -DCXSPARSE=OFF \
&& make install -j4 \
&& rm -rf /root/ceres-solver-2.1.0 /root/2.1.0.tar.gz
# spdlog
RUN wget https://github.com/gabime/spdlog/archive/refs/tags/v1.12.0.tar.gz \
&& tar -zxf v1.12.0.tar.gz \
&& cd spdlog-1.12.0 \
&& mkdir build && cd build \
&& cmake .. -DSPDLOG_BUILD_SHARED=ON \
&& make install -j \
&& rm -rf /root/v1.12.0.tar.gz /root/spdlog-1.12.0