Unit 09 · lesson

Diagnose Package, Executable, and Node Failures

Three symptoms sound similar but live at different boundaries.

Package not found

ros2 pkg list | grep robotnix_pubsub

If nothing appears, inspect build/install/sourcing before node code.

Package found, executable missing

ros2 pkg executables robotnix_pubsub

If talker or listener is missing, inspect setup.py console scripts and rebuild.

Executable starts, node name unexpected

ros2 node list

Compare source Node(...) names with launch name/namespace overrides.

Node expected but absent

Read the launch terminal/process error. A Python import or startup exception can prevent the node from joining the graph.

Classification drill

For each symptom, choose the earliest useful evidence:

  1. ros2 run says package not found;
  2. package exists but executable not found;
  3. launch reports process exited;
  4. process appears healthy but expected node name is absent.

Checkpoint

Explain why ros2 node list cannot diagnose a package that never installed successfully.