0
$\begingroup$

I have Ubuntu 22.04 installed and corresponding to that have ROS Humble installed, I am trying to create a workspace with Catkin but have run into an issue:

engineer@vmubuntu:~/catkin_workspace/src$ catkin_init_workspace Command 'catkin_init_workspace' not found, but can be installed with: sudo apt install catkin

Have tried to get the GitHub project and use 'catkin_make' but get error

Could not find any updated document stating this cannot be done or if it is, could not find anything to make this work.

I tried installing Catkin but run into this issue:

engineer@vmubuntu:~/catkin_workspace$ sudo apt install catkin Reading package lists... Done Building dependency tree... Done Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation:

The following packages have unmet dependencies. python3-catkin-pkg : Conflicts: catkin but 0.8.10-7 is to be installed python3-catkin-pkg-modules : Conflicts: catkin but 0.8.10-7 is to be installed E: Unable to correct problems, you have held broken packages.
$\endgroup$

3 Answers 3

0
$\begingroup$

I don't know precisely how/why your environment got into this state, but it appears to be a pretty standard package conflict and so we can use the usual apt tricks here:

  • start with an apt upgrade to get everything you do have installed up-to-date
  • apt purge conflicting packages and reinstall.

If that still gives you trouble, tools like aptitude can be very helpful: while apt-get is doing its best to resolve this conflict, aptitude has a smarter conflict solver and will give you several possible solutions. It should find one that allows you to keep all these packages (perhaps by downgrading some package somewhere).

$\endgroup$
0
$\begingroup$

Apparently, it did work fine with Ubuntu 20.04 and the corresponding Noetic, thank you @ cst0.

$\endgroup$
0
$\begingroup$

ROS Humble is a ROS2 distro therefore it uses colcon to build packages instead of catkin tools.

See Migrating C++ Packages - Build system:

The build system in ROS 2 is called ament. Ament is built on CMake: ament_cmake provides CMake functions to make writing CMakeLists.txt files easier.

$\endgroup$
0

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.