slambook2 编译运行测试用例
名称:slambook测试用例编译与环境
容器:docker
作用:从源码编译算法
环境配置
-
sudo curl -sSL https://get.daocloud.io/docker sh - sudo usermod -aG docker [用户名]
- sudo docker pull bodcoder2/slam14:latest
更改国内镜像源头(不是必要操作)
-
sudo vim /etc/docker/daemon.json
-
复制黏贴 { "registry-mirrors" : [ "http://docker.mirrors.ustc.edu.cn", "http://registry.docker-cn.com", "http://hub-mirror.c.163.com" ], "insecure-registries" : [ "registry.docker-cn.com", "docker.mirrors.ustc.edu.cn" ], "debug" : true, "experimental" : true }
-
esc -> wq
-
sudo systemctl daemon-reload
- sudo systemctl restart docker
具体使用与实际编译
> 使用 > > - cd ~ > - mkdir share > - docker run -it -v ~/share bodcoder2/slam14:latest /bin/bash > - cd /root/SLAMCode/slambook2 > - vim ~/.bashrc > - export PATH=/root/cmake-3.17.0-rc2-Linux-x86_64/bin:$PATH > - source ~/.bashrc > - cd ch-xxx > - mkdir build > - cd build > - cmake .. > - make > - ./xxx > 再次启动 > > - sudo docker ps -a > - sudo docker start [CONTAINER ID] > - sudo docker exec -it [CONTAINER ID] bash > 远程IDE调用 > > - 打开vscode > - 下载插件 docker > - 连接docker > - 下载插件 Remote Development > docker使用本地桌面 > > - docker run -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY -e GDK_SCALE -e GDK_DPI_SCALE -it -v ~/share bodcoder2/slam14:latest /bin/bash > - 本地桌面执行:xhost + > 报c库错误,在docker中执行 > > - export LC_ALL=C > ch8编译问题解决 > > - 将CMakeLists.txt 中 find_package(OpenCV 4 REQUIRED) 修改为 find_package(OpenCV 3.1 REQUIRED) > ch9编译问题解决 > > - cd ~/Sophus/ > - rm -r build/ > - mkdir build/ > - cd build/ > - cmake .. > - make > - make install > - cd .../ch9/build > - cmake .. > - make > ch10编译问题解决 > > - mkdir build > - cd build > - cmake .. > - make > ch13编译问题解决 > > - mkdir build > - apt-get install cmake libgtest-dev > - cd /usr/src/gtest > - cmake CMakeLists.txt > - make > - cp *.a /usr/lib > - cd - > - cd build > - cmake .. > - make