How do I ensure turtle_tf_3d is available for import during catkin_make?

-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- ~~  traversing 1 packages in topological order:
-- ~~  - tf_publisher
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- +++ processing catkin package: 'tf_publisher'
-- ==> add_subdirectory(tf_publisher)
CMake Warning at /opt/ros/latest/share/catkin/cmake/catkinConfig.cmake:76 (find_package):
  Could not find a package configuration file provided by "turtle_tf_3d" with
  any of the following names:

    turtle_tf_3dConfig.cmake
    turtle_tf_3d-config.cmake

  Add the installation prefix of "turtle_tf_3d" to CMAKE_PREFIX_PATH or set
  "turtle_tf_3d_DIR" to a directory containing one of the above files.  If
  "turtle_tf_3d" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  tf_publisher/CMakeLists.txt:10 (find_package)


-- Could not find the required component 'turtle_tf_3d'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/latest/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by "turtle_tf_3d" with
  any of the following names:

    turtle_tf_3dConfig.cmake
    turtle_tf_3d-config.cmake

  Add the installation prefix of "turtle_tf_3d" to CMAKE_PREFIX_PATH or set
  "turtle_tf_3d_DIR" to a directory containing one of the above files.  If
  "turtle_tf_3d" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  tf_publisher/CMakeLists.txt:10 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/user/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/user/catkin_ws/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed

I have the following in my package.xml file:

  <build_depend>rospy</build_depend>
  <build_depend>std_msgs</build_depend>
  <build_depend>turtle_tf_3d</build_depend>
  <build_export_depend>rospy</build_export_depend>
  <build_export_depend>std_msgs</build_export_depend>
  <build_export_depend>turtle_tf_3d</build_export_depend>
  <exec_depend>rospy</exec_depend>
  <exec_depend>std_msgs</exec_depend>
  <exec_depend>turtle_tf_3d</exec_depend>

And in CMakeLists.txt:

find_package(catkin REQUIRED COMPONENTS
  rospy
  std_msgs
  turtle_tf_3d
)

And running rosdep for turtle_tf_3d:

user:~/catkin_ws$ rosdep where-defined turtle_tf_3d
ERROR: cannot find definition(s) for [turtle_tf_3d]

Searching for turtle_tf_3d:

user:~/catkin_ws/src$ rospack list | grep turtle
turtle_actionlib /opt/ros/latest/share/turtle_actionlib
turtle_tf /opt/ros/latest/share/turtle_tf
turtle_tf2 /opt/ros/latest/share/turtle_tf2
turtlesim /opt/ros/latest/share/turtlesim

… can’t find it.

What am I missing?

I have the same problem and not fixed yet. Anyone can help?

And by the way, this problem also occurs in Unit 4 Understanding Robot State Publisher & Joint State Publisher.

user:~$ roscd pi_robot_pkg
roscd: No such package/stack ‘pi_robot_pkg’

I think its the same issue: Problem of dependencies not found in TF 101 - Unit 2 and Unit 3

Please have a look at the answer and answer if it fixed something or not. If not please download the whole catkin_ws with the IDE ( right click and download ), and share those files here so we can ha a look on what exactly is going on.

Hi @ttqwer1,

I see the email you sent in which you mention the problem was solved after restarting your session, so I’ll mark this question as solved.

Thanks for letting us know you managed to make it work.

Thanks everyone. This was very helpful. Yes, resetting the workspace fixed the issue.