tf view_frame missing, how to reinstall

asked 2018-10-28 21:58:34 -0600

Kolohe113 gravatar image

updated 2018-10-30 20:38:53 -0600

Hello, I was trying to install tf2 in my catkin_ws so to avoid any conflict I deleted tf. However, tf2 seems to have having problem so I tried reinstalled tf by git clone the depository into my catkin_ws/src and catkin_make. However, catkin_make kept failing. So I move on and install tf by tying:

sudo apt-get install ros-kinetic-tf

It worked, but I am missing view_frame. These are the package shown when I type rosrun tf [tab][tab]:

static_transform_publisher,   tf_echo,
testBroadcaster,                   tf_empty_listener,
testListener,                         tf_monitor,
tf_change_notifier,               transform_listener_unittest

When I type view_frames, it gave me an error saying:

Traceback (most recent call last):
  File "/home/user-linux/catkin_ws/devel/bin/view_frames", line 7, in <module>
    with open(python_script, 'r') as fh:
IOError: [Errno 2] No such file or directory: '/home/user-linux/catkin_ws/src/geometry/tf/scripts/groovy_compatibility/view_frames'

I am using ROS Kinetic. I am using Ubuntu 16.04. Can anyone help?

Edit 1: In terminal 1, when I run source /opt/ros/kinetic/setup.bash and roscd .This happens:

/opt/ros/kinetic$ rosrun tf [tab][tab]     tf_empty_listener
static_transform_publisher  tf_monitor
tf_change_notifier          tf_remap
tf_echo                     view_frames

In terminal 2, When I run source ~/catkin_ws/devel/setup.bash and roscd. This happens:

~/catkin_ws/devel$ rosrun tf [tab][tab]
static_transform_publisher   tf_echo
testBroadcaster              tf_empty_listener
testListener                 tf_monitor
tf_change_notifier           transform_listener_unittest

Is this means I have two tf package installed?

Edit 2: Weird, when I try to look for where the tf package is installed, I can only find the one in /opt/ros/kinetic/share/tf when I type rospack find

edit retag flag offensive close merge delete



It seems like you have tf in your workspace (from your traceback), and thus are using this and not the installed one. Can you test if this works if you do a source /opt/ros/kinetic/setup.bash? If yes, it is installed properly, but your overlay of tf has some problems, probably some build issues...

mgruhler gravatar imagemgruhler ( 2018-10-29 02:09:56 -0600 )edit

Hello, I was trying to install tf2 in my catkin_ws so to avoid any conflict I deleted tf

can you also perhaps clarify why you are building all of this from source? Are you on an unsupported platform?

gvdhoorn gravatar imagegvdhoorn ( 2018-10-29 03:14:03 -0600 )edit

No, I am just new to ROS. I thought if tf2 can install using sudo apt-get install, it should have no problem being built from source. Catkin_make proved me wrong.

Kolohe113 gravatar imageKolohe113 ( 2018-10-29 03:28:52 -0600 )edit

TF2 can be built from source: the buildfarm does it all the time. I just wanted to make sure that you weren't thinking "I must install everything from source in ROS", as that is not the case. Only build from sources if absolutely necessary. Otherwise, prefer to use apt packages.

gvdhoorn gravatar imagegvdhoorn ( 2018-10-29 03:30:52 -0600 )edit

Thank you for the advice! Will do that from now on.

Kolohe113 gravatar imageKolohe113 ( 2018-10-29 03:32:37 -0600 )edit

When I source /opt/ros/kinetic/setup.bash and then run view_frames. It works! I can get the frames.pdf

Kolohe113 gravatar imageKolohe113 ( 2018-10-29 03:39:21 -0600 )edit

When I source /opt/ros/kinetic/setup.bash and then run view_frames. It works! I can get the frames.pdf

Then it would seem building TF2 from sources was not successful.

if you don't need it, I would suggest to remove the tf2 pkgs from your workspace and use the binary pkgs.

gvdhoorn gravatar imagegvdhoorn ( 2018-10-29 04:38:14 -0600 )edit