I think the term "homeless" is really a euphemism that makes it easier for wealthy people to talk about poor people (if you have shelter, food, and are not living paycheck to paycheck you count as wealthy), and it results in misunderstandings about what the real problems are.
Giving a house to someone who lives on the streets is a nice gesture but it doesn't address the underlying problems - unemployment, unemployability, health problems, psychological problems, lack of social support structure, lack of supportive relationships (e.g. friends and family) - you can't just fix someone's life with a building.
It's like a grade-school-level understanding of the problem ("just give the homeless people homes! then they're not homeless anymore! problem solved!"). Without putting in a real effort to support these individuals' lives, to understand and address what put them in that situation in the first place, this is a temporary patch that will end in relapse.
No but it's a start and a damn good one, sometimes just having a space that's safe warm and not exposed to the elements can be a huge help for a lot of people.