LoginSignup
0
0

More than 1 year has passed since last update.

ROSでなんかうまくいかないとき(付け焼き刃)

Last updated at Posted at 2021-06-08

※あくまで付け焼き刃である

この記事はあくまで付け焼き刃であり、完璧な解決方法ではないが、とりあえず試すとうまく行くことがある。
ROSをいじっていて困ったとき、解決方法がどこにも落ちていないときなどにやってみるとうまくいくかも、位に思っていただけると...

環境

・ROS melodic
・Ubuntu 18.04

$ cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.5 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.5 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic

解決した事例など

・rvizがなぜか立ち上がらない(apt update後とかにありがち)
 ↓みたいなエラーコードが出る(詳細は忘れた)

rviz Unable to create a suitable GLXContext in GLXContext

・catkin_makeが通らない(変なエラーメッセージが出る)(こちらも詳細は忘れました)
・自作msgをよみこんでくれない(以下参照)

# msgはちゃんと存在しているっぽい
$ rosmsg show test_pkg/original_msg
std_msgs/Header header
  uint32 seq
  time stamp
  string frame_id
string s
bool flag

# なのに「そんなもんはない」と言ってくる
$ rosrun test_pkg test.py 
Traceback (most recent call last):
 File "/home/.../test.py", line 9, in <module>
    from test_pkg.msg import original_msg
ImportError: cannot import name original_msg

解決策

「壊れたテレビも叩けば治る」みたいな解決策なんですけどけっこうバカにならないので書いておきます。
「コンセントは抜けていませんか?」みたいなQ&Aに腹が立つ!人にはおすすめできませんよ!先に言ったからね!

・再起動
マジでこれに尽きる。ネットでいろいろ調べてコマンド打って直んなくて再起動したら一瞬で元通りとかザラにある。検索とかしてた時間を返せ、という...
上に書いた事例だと、rvizの話とかはこれで解決した気がする。

・buildファイルの削除
GitHubからcloneして別PCでcatkin_makeするとかのとき、あんま理解していなくてbuildファイルごとcloneしちゃってたんですがbuildファイルを消して再buildするとなおる。
そもそもGitHubにbuildファイルごと上げるな!なんですよね、すみません
上の事例だとcatkin_makeとmsgの2つがこれに該当する。

以上です。他にも「それで直るんかい」みたいなものがあれば追記していきます。
ネットでいろいろ調べたけどなんの成果も得られなかった...みたいな人はとりあえず試すと良いかもしれない。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0