A better question is, given how much money governments spend on nonsense, why can't we take some money, and build actual housing for people? Surely a society that can produce semiconductors and fighter jets etc. is capable of assembling few thousand bricks/wood/whatever and build homes.
The road to hell is paved with good intentions. If we had thousands of homeless shelters we might end up seeing people moving to shelters from actual houses that they can ill afford. Some could argue that evictions should be easier because worst case there would be shelters to go to. You will degrade housing for poor people instead of helping the destitute.