在docker上运行LCM

2024-01-08 12:44:12

目录

1.加载镜像并进入容器

2.安装依赖

3.在docker外部git-clone lcm

4.将get-clone的lcm复制到容器中

5.编译库

6.将可执行文件复制到容器中

7.进入可执行文件

8.编译可执行文件

9.再开一个终端运行程序

10.将以上容器打成镜像并导出


1.加载镜像并进入容器

sudo docker run -it ubuntu bash

mkdir app //建立app目录

2.安装依赖

//换源
sed -i 's/http:\/\/archive.ubuntu.com\/ubuntu\//http:\/\/mirrors.aliyun.com\/ubuntu\//g' /etc/apt/sources.list

echo "nameserver 8.8.8.8" > /etc/resolv.conf

apt-get update \

????&& apt-get install build-essential libglib2.0-dev cmake \

????&& apt-get install default-jdk python-all-dev liblua5.1-dev golang doxygen

3.在docker外部git-clone lcm

?
git clone https://github.com/lcm-proj/lcm.git

4.将get-clone的lcm复制到容器中

docker cp /home/f**/lcm?87d:/app??//87d是创建容器生成的ID号

5.编译库

cd lcm

vim /etc/profuile

在最后一行添加

export JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8

source /etc/profile

cmake ..

make

make install

以上步骤将环境都安装完成了

6.将可执行文件复制到容器中

docker cp /home/fuzhifang/LCM?87d:/app??//87d是创建容器生成的ID号

LCM是可执行文件

7.进入可执行文件

cd /app/LCM
lcm-gen -x example_t.lcm
g++ -o send_message send_message.cpp -llcm
g++ -o listener listener.cpp -llcm

8.编译可执行文件

mkdir build
cd build
cmake ..
make

9.再开一个终端运行程序

sudo docker exec -it 87d bash
cd /app/LCM/build
终端1 ./lister     终端2  ./send_message

10.将以上容器打成镜像并导出

退出镜像exit

提交容器

docker commit 87df17537bc4 mylcm:v11

查看镜像

导出压缩包

docker save -o lcm_images0108.tar mylcm:v11

文章来源:https://blog.csdn.net/m0_58173801/article/details/135452794
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。