ZED2 SDK3.6 + CUDA10.2 + Ubuntu18.04 + ROS Melodic ——ORB-SLAM3
目录
1.先下载 zed-ros-wrapper,确保后续安装软件版本正确
2.下载ZED SDK,注意如果已经有CUDA,要下载对应版本
1.检验自己是否成功装上CUDA,首先检查自己CUDA版本:
1.先下载 zed-ros-wrapper,确保后续安装软件版本正确
由此可知,需要下载ZED SDK>3.5,和其配套的CUDA
下载zed_ros_wapper:
$ cd ~/catkin_ws/src
$ git clone --recursive https://github.com/stereolabs/zed-ros-wrapper.git
$ cd ../
$ rosdep install --from-paths src --ignore-src -r -y
$ catkin_make -DCMAKE_BUILD_TYPE=Release
$ source ./devel/setup.bash
插上ZED2,运行代码测试:
$ roslaunch zed_wrapper zed2.launch
2.下载ZED SDK,注意如果已经有CUDA,要下载对应版本
此处,选择CUDA10.2版本下的 3.6.1 ,下载之后
给文件权限:
chmod +x ZED_SDK_Ubuntu18_cuda10.2_v3.1.2.run
运行ZED SDK
./ZED_SDK_Ubuntu18_cuda10.2_v3.1.2.run
或者打开目录 /usr/local/zed/tools,直接双击打开
SDK
3.CUDA10.2的安装与NVIDIA全家桶卸载
打开NVIDIA官网,但是最好不要选择第二种安装方式
因为每次我运行到最后一步之后就自动给我下载成最新版CUDA了
此处,选择runfile方式。
注意在打开时,可能会没有反应,之后我也是经过重启、午饭、午睡之后就自然好了。
为了方便复制
wget https://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run
sudo sh cuda_10.2.89_440.33.01_linux.run
下面的补丁也都要下载运行
关于CUDA和NVIDIA全家桶的卸载
难免装错需要重装,或者是一种妥协,选择多种设备环境和平共处。
1.检验自己是否成功装上CUDA,首先检查自己CUDA版本:
$ nvcc -V
并且,CUDA可以在/usr/local/cuda目录找到
若提示找不到该指令,则是CUDA虽然安装,但是没有加入到环境变量,需要打开.bashrc,在home下按ctrl+H可以找到,也可以执行命令:
$ echo 'export PATH=/usr/local/cuda-10.2/bin/:$PATH'>>~/.bashrc
$ echo 'export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:$LD_LIBRARY_PATH'>>~/.bashrc
$ source ~/.bashrc
注意!
nvidia-smi命令所显示的CUDA并不是安装信息,而是推荐版本
2.环境杂糅最好的办法就是全部卸载干净:
To remove CUDA Toolkit:
$ sudo apt-get --purge remove "*cublas*" "*cufft*" "*curand*" "*cusolver*" "*cusparse*" "*npp*" "*nvjpeg*" "cuda*" "nsight*"
To remove NVIDIA Drivers:
$ sudo apt-get --purge remove "*nvidia*"
To clean up the uninstall: 但通常这一步不建议使用,因为可能会破坏ROS环境
$ sudo apt-get autoremove
3.重新安装Nvidia驱动检查自己的显卡版本
$ ubuntu-drivers devices
选择带有 recommended字样的驱动,安装该版本(电脑是NVIDIA GTX1050)
$ sudo apt-get install nvidia-driver-495
经过数天朝9晚11的鏖战终于解决环境问题
至此,前期的环境问题应该都已解决
ZED2也已经跑通ORB-SLAM3,后续将持续更新