How to make a turret on a vehicle to always be align at the crosshair?

I’ll give it a shot at this. If I was trying to do that, I would convert the crosshair from 2d space to 3d space (the crossair points at the infinity from the camera).
After you have that point you have a direction vector you can use to rotate the cannon.

You would have to point the cannon to:
Cam pos + cam dir * big number

Does this make any sense? Maybe that math is all wrong…