Closed JohnnyLiu2886 closed 2 years ago
Hi @JohnnyLiu2886,
The docker rps:foxy-ros-core-focal
already has installed Fast DDS (default middleware for ROS 2 Foxy) and thus, it also has installed all its dependencies. If you run
ls /opt/ros/foxy/lib | grep foonathan
you will see that libfoonathan_memory-0.6.2.a
is already installed within the docker container. You can also run a similar command and see that libfastrtps.so.2.1.1
is also installed.
In order to install PX4 and Mavros on the Jetson nano. I created a dockerfile which uses docker image "ros:foxy-ros-core-focal". It is installed with ros2-foxy.
In order to install PX4, I need to install Fast-DDS. Before the installation of Fast-DDS, foonathan_memory_vendor is needed. I have installed it on the jetson nano successfully but I failed to install it to the docker container which is using ros2-foxy and ubuntu 20.04.
The following error always comes out no matter installing from source or binary. " /foonathan_memory_vendor/../share/foonathan_memory-i86Win32VS2019/cmake/foonathan_memory-config.cmake" is always not found.
It is a static path written to the "foonathan_memory-config.cmake". From the path, "i86Win32VS2019" seems to be something related to visual studio. Do I need to install visual studio code in the docker container before installing foonathan_memory_vendor?
Here is my code:
`FROM ros:foxy-ros-core-focal RUN rm /bin/sh && ln -s /bin/bash /bin/sh
RUN apt-get update && apt install -y \ git \ python3-vcstool \ python3-rosinstall-generator \ python3-osrf-pycommon \ software-properties-common \ protobuf-compiler \ g++ \ make \ libprotobuf-dev \ protobuf-compiler \ openjdk-8-jdk \ curl \ unzip \ zip
RUN \ cd /usr/local && \ curl -L https://services.gradle.org/distributions/gradle-7.2-bin.zip -o gradle-7.2-bin.zip && \ unzip gradle-7.2-bin.zip && \ rm gradle-7.2-bin.zip
ENV GRADLE_HOME=/usr/local/gradle-7.2 ENV PATH=$PATH:$GRADLE_HOME/bin RUN gradle -v
RUN apt-get update && apt install -y \ tar COPY cmake-3.21.2.tar.gz . RUN tar -xvzf cmake-3.21.2.tar.gz
WORKDIR cmake-3.21.2 RUN ./bootstrap RUN make RUN make install
RUN apt-get update && apt install -y \ python2 \ python3-colcon-common-extensions \ ros-foxy-ament-cmake-python \ apt-utils \ python3-rosdep
WORKDIR / RUN apt-get update && apt install -y \ wget \ python3-pip RUN git clone https://github.com/eProsima/foonathan_memory_vendor.git WORKDIR foonathan_memory_vendor WORKDIR build RUN cmake .. RUN cmake --build . --target install`
The error occurs in the final "RUN cmake ..".