0
$\begingroup$

I am using Ubuntu 20.04 LTS desktop and ros Noetic

i have installed this library robot_state_publisher for integrate the imu and Lidar,

when I clone the repo from GitHub in my workspace src folder then I came back to workspace and I did catkin_make

I want to use tf to get updated in real-time using this package

it gave me an Error : the Error is following:

-- ~~  - rviz_imu_plugin
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CMake Error at /opt/ros/noetic/share/catkin/cmake/catkin_workspace.cmake:100 (message):
  This workspace contains non-catkin packages in it, and catkin cannot build
  a non-homogeneous workspace without isolation.  Try the
  'catkin_make_isolated' command instead.
Call Stack (most recent call first):
  CMakeLists.txt:69 (catkin_workspace)


-- Configuring incomplete, errors occurred!
See also "/home/aiot/ros_slam/build/CMakeFiles/CMakeOutput.log".
See also "/home/aiot/ros_slam/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed```
$\endgroup$

1 Answer 1

0
$\begingroup$

Please build the package with catkin_make_isolated instead of catkin_make.

  • catkin_make treats the entire workspace as a single cmake project, and builds it with a single invocation of cmake. Since catkin_make treats the entire workspace as a single package, it's faster for incremental builds that only change code, but slower when you need to regenerate the build files, and more sensitive to dependency issues between packages.
  • catkin_make_isolated treats each package as a separate cmake project, and builds and installs each separately, in dependency order. This is why it's able to build plain cmake packages.
$\endgroup$
1
  • $\begingroup$ after runing catkin_make_isolated it gives me an error like Error: Packages with unknown build types exist Can not build workspace with packages of unknown build_type $\endgroup$ Mar 21 at 2:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.