When a mesh is binded to an armature via Ctrl+P>Armature Deform, its vertices are binded to armature bones with vertex weight assigned manually (Empty Groups) or automatically (Envelope weights, Automatic weights), but this is taking into account the original (Tab-editable) mesh and not vertices generated with geometry nodes.
If the object is created inside the GN nodetree, its vertices wont be affected by armature binding.
In this example, the original "leglike" object is binded to an armature.
Distorted and instance-replicated via geometry nodes, their distorted vertices follow the bones, and also the instances on that points, but the GN generated sphere nor the instances on its surface are affected by the bones.
Then, if your geometry nodes tree is fed by an original (Tab-editable) mesh it will work fine with armatures, but if the object is fully generated inside geometry nodes it will not.
The simplest solution is to bind the entire object to a bone: Select the object then shift-select the armature, switch to Pose mode and then select the bone and Ctrl+P>Bone.
This way you bind Translation, Rotation and Scale of the object to the bone so it stays "rigid" and
still mantains its geometry nodes properties.
You can try workarounds depending of what you want to do with GN (like reading other objects position via Object Info and creating your own deformers inside geometry nodes) but that is the simplest and quickest solution.