Sort:  

First of all, we should determine the reasons for being homeless and try to eliminate that reason.
If he is jobless then it would be a great help for them to arrange some job.
A rented shelter could be another option.
If someone have enough money and heart then he could build or buy a shelter for the family.
If someone is not rich enough he can get help of some organization, social circle to buy a shelter.

Thanks for the answer, but what if the person doesn't want to go into a shelter?

In that case a job can be arranged for him, so that the person can arrange for himself.

This is really hard to deal with. I know you got a great heart. Firstly, I think is to see if we are financially sound ourselves. We need to be prepared to put in a lot of time in order to help the homeless. Maybe, one of the ways is to find out if they have any relatives. We can ask their relatives to help a bit.

Get donations to help built up at least a decent shelter for them. It won't be an easy task but I bet you've got a really big heart that's why you wanted to do this.
Humanity is saved.