一、先配置sources.list
Debian篇——Debian12的sources.list文件配置
二、基本环境部署安装(安装时提示找不到的库,需要修改一下版本 ,安装你能找得到的版本)
sudo apt-get install git
sudo apt-get install cmake
sudo apt-get install python3-pip
#---pip3 install报错参考文章:https://blog.csdn.net/u011391361/article/details/136470825?spm=1001.2014.3001.5501
sudo pip3 install defusedxml
sudo pip3 install rospkg
sudo pip3 install netifaces
sudo pip3 install empy==3.3.2
sudo pip3 install pycrypto
sudo pip3 install pycryptodomex
sudo pip3 install wheel
sudo pip3 install sip
sudo pip3 install gnupg
#---安装时提示...ReadTimeoutError: HTTPSConnectionPool...重试即可
#---安装gnupg时如果在安装setuptools的时候报错,按如下方法解决
wget https://pypi.python.org/packages/source/s/setuptools/setuptools-69.1.1.tar.gz
tar -zxvf setuptools-69.1.1.tar.gz
cd setuptools-69.1.1/
python3 setup.py build
python3 setup.py install
然后再重试sudo pip3 install gnupg,第一次可能还会报错,再试一次即可
sudo apt-get install zip
sudo apt-get install libboost1.74-all-dev
sudo apt-get install liblog4cxx15
sudo apt-get install liblog4cxx-dev
sudo apt-get install liblog4cxx-doc
sudo apt-get install libtinyxml2-9
sudo apt-get install libtinyxml2-dev
sudo apt-get install libtinyxml-dev libtinyxml-doc
sudo apt-get install ogre-1.12-tools
sudo apt-get install assimp-utils
sudo apt-get install libyaml-cpp0.7
sudo apt-get install libyaml-dev
sudo apt-get install libyaml-cpp-dev
sudo apt-get install libpoco-dev
sudo apt-get install libpocofoundation80
sudo apt-get install liburdfdom-tools
sudo apt-get install liburdfdom-headers-dev
sudo apt-get install liburdfdom-dev
sudo apt-get install python3-pyassimp libassimp-dev
sudo apt-get install libcollada-dom2.4-dp-dev
sudo apt-get install python3-sip python3-sip-dev
sudo apt-get install liblz4-dev
sudo apt-get install libogre-1.12-dev
sudo apt-get install python3-netifaces python3-defusedxml
sudo apt-get install libconsole-bridge1.0 libconsole-bridge-dev -y
sudo apt-get install libcurl4-openssl-dev
sudo apt-get install liborocos-kdl-dev
sudo apt-get install qtcreator
sudo apt-get install libbullet-dev
sudo apt-get install libopencv-dev
#---安装pyqt(能装多少装多少,部分实在无法安装就跳过,一般也不在debian上直接跑图形界面)
sudo apt-get install python3-pyqt5 pyqt5-dev python3-sip-dev pyqt5-dev-tools
sudo apt-get install pyqt5*
sudo apt-get install qttools5-dev-tools
sudo pip3 install -v pyqt5==5.15.2 -i https://mirror.baidu.com/pypi/simple (存疑,安装可能失败)
sudo pip3 install pybind11 -i https://mirror.baidu.com/pypi/simple
sudo apt-get install libopencv-dev
sudo apt-get install libgtest-dev -y
sudo apt-get install libuvc-dev
sudo apt-get install libeigen3-dev
sudo apt-get install libbz2-dev
sudo apt-get install liblzma-dev
sudo apt-get install libgpgme-dev
sudo apt-get install libpcl-dev
sudo apt-get install jskeus-dev
sudo apt-get install python3-gpg
sudo apt-get install libgpgme-dev
sudo apt-get install libturbojpeg0
sudo apt-get install libglfw3-dev
sudo apt-get install libturbojpeg0-dev
sudo apt-get install libroscpp-dev
sudo apt-get install librosconsole-bridge-dev
sudo apt-get install aptitude
sudo apt-get install cppcheck python3-nose
sudo apt-get install clang-format pydocstyle pyflakes3
sudo apt-get install python3-funcsigs python3-mock
sudo apt-get install python3-pbr python3-pep8
sudo apt-get install uncrustify
sudo apt-get install libcg3-dev cg3
sudo apt-get install libsdl2-dev
sudo apt-get install doxygen
sudo apt-get install rviz
三、下载ros noetic源码并编译
#---源码下载途径:
#---1.csdn下载:https://download.csdn.net/download/TJXUNwu/87522092?spm=1001.2014.3001.5501
#---2.或者百度网盘下载:https://pan.baidu.com/s/1zKFcee2G-dydpk7qY_t8UA?pwd=5555
其中ros_noetic_src.zip和ros_catkin_ws.zip选一个下载即可。
ros_noetic_src.zip是比较完整的包, 根据实际需要或者编译情况可以删掉一些包。
ros_caktin_ws.zip是我自己debian12的单片机上面用的,由于系统兼容性和cpu架构问题,删掉了一些包(qt_gui_core、rosconsole、visualization_tutorials这4个,编不过,且我用不到),只保留了能够编译通过和必须使用到的包。
#---3.或者使用python3-rosinstall-generator下载源码(这个会很长时间,且有可能下载不完整)
sudo apt-get install python3-rosinstall-generator
sudo apt-get install python3-vcstools
sudo apt-get install vcstools
sudo apt-get install python3-rosdep (找不到rosdep就rosdep2)
sudo rosdep init
rosdep update
(提示ERROR: unable to process source [https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-h的话,就在/etc/hosts的末尾另起一行添加151.101.84.133 raw.githubusercontent.com)
rosinstall_generator desktop --rosdistro noetic --deps --tar > noetic-desktop.rosinstall
mkdir ~/ros_catkin_ws/src -p
cd ~/ros_catkin_ws/
vcs import --input noetic-desktop.rosinstall src
这里如果进入下载了会提示...,如果出错的,就提示E
#---开始编译
#---进入debian12系统
cd
mkdir ros_noetic
#---将下载好的压缩包放到ros_noetic目录下解压,会生成src文件夹
#---防止从Windows下载后文件权限变化,可以给整个解压后的src文件夹所有文件777权限。
cd ros_noetic
sudo chmod 777 src -R
#---然后开始编译,根据你的debian的cpu核数决定用多少个核编译,不要用全部的核编译,系统会卡住
#---如果只有2个核,那么就用-j1
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release -j2
#---不带界面debian系统可能会在编译qt_gui_core包的时候报错,直接将qt_gui_core删除后重新编译
#---编译rosconsole包的时候报log4cxx相关的错误时,从https://github.com/lucasw/rosconsole拉取rosconsole的源码,切到concise_output_roso分支,替换掉rosconsole包。如果编译还报错,把报错的地方注释掉。
#---编译如果报错error: using typedef-name ‘Ogre::Vector3’,安装ogre的v1.11.2版本, 链接https://github.com/OGRECave/ogre/tree/v1.11.2,然后编译安装
进入下载的文件夹下
mkdir build && cd build
cmake ..
make
sudo make install
这个办法可能无法安装ogre.
这个办法在性能不好的设备上可以放弃了, 可以把上面报错的地方用到ogre的相关包删掉, 再重新编译
#---编译过程中还有可能提示g++: internal compiler error: Killed (program cc1plus)的报错
#---这个是因为你的设备性能不够,编译时系统资源不够了
#---解决方案:https://blog.csdn.net/u011391361/article/details/136631461?spm=1001.2014.3001.5502
#---实际上可能还有其他报错, 根据经验或网上的方法一一解决
#---完全编译通过后将source ~/ros_noetic/install_isolated/setup.bash添加到~/.bashrc文件的末尾,然后source ~/.bashrc即可使用ros啦。
后语:经过重重艰辛,终于编译通过,运行roscore一直卡住,ctrl+c停止roscore的进程时提示python3下面的rosgraph相关的错误,这个时候卸载重装python3下的rosgraph
pip3 uninstall rosgraph
sudo apt-get install python3-rosgraph python3-rosgraph-msgs