ROS melodicをProxy環境でインストールする。
Proxy環境下でROSを導入したときの備忘録。
実行環境
Ubuntu 18.04.1 LTS (Bionic Beaver)
前準備
Proxyの設定を環境変数、aptともに行っておく。
環境変数は http,https,ftp,no_proxyで大文字、小文字を登録しておくと良い。
18.04では aptのproxy設定は /etc/apt/apt.conf.d/proxy.conf に記載する。
インストール
aptのソースリスト取得
Proxy環境ではKeyサーバーにつながらないのでgpgのpubkeyをwgetで取得している。
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu bionic main" > /etc/apt/sources.list.d/ros-latest.list' wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
sudo apt update sudo apt install -y ros-melodic-ros-base #GUIツール無 sudo apt install -y ros-melodic-desktop #GUIツール有
途中で「依存関係の構築が失敗しました。」になった場合。
その場合はsudo apt --fix-broken install
を実行する。
rosdep実行
sudo -E rosdep init #option -E で環境変数を渡す rosdep update
必須パッケージのインストール
sudo apt install -y python-rosinstall python-rosinstall-generator python-wstool build-essential
以下のエラーが出た場合、強制的に上書きインストールする。
- エラー
trying to overwrite '/usr/lib/python2.7/dist-packages/rospkg/manifest.py', which is also in package python-rospkg 1.1.4-1 Errors were encountered while processing: `/var/cache/apt/archives/python-rospkg-modules_1.1.7-1_all.deb` E: Sub-process /usr/bin/dpkg returned an error code (1)
- 対処法
sudo dpkg -i --force-overwrite /var/cache/apt/archives/python-rospkg-modules_1.1.7-1_all.deb
ROSコマンドの有効化
source /opt/ros/melodic/setup.bash grep -q -F 'source /opt/ros/melodic/setup.bash' ~/.bashrc || echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
Workspaceのセットアップ
mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src catkin_init_workspace cd .. catkin_make
ROS 環境変数のセットアップ
使用方法に合わせて実行してください。
grep -q -F ' ROS_MASTER_URI' ~/.bashrc || \ echo 'export ROS_MASTER_URI=http://localhost:11311' | \ tee -a ~/.bashrc grep -q -F ' ROS_IP' ~/.bashrc || \ echo "export ROS_IP=$(hostname -I)" | \ tee -a ~/.bashrc
参考サイト
melodic/Installation/Ubuntu - ROS Wiki
ROS Keyserver Down? - ROS Answers: Open Source Q&A Forum
apt - dpkg error: "trying to overwrite file, which is also in..." - Ask Ubuntu
以上。