Any effective aid will have to come from the wealthy countries, being the only ones with enough resources to provide it. Meaning, not only will they have to give up the debts owed to them, but on top of that they are expected to donate more money (which will never be paid back) for the greater social good.
This is a very problematic concept. Social responsibility punishes wealthy countries for their wealth. While this may be the only possible way of action today to help the developing countries (and the majority of humanity), it also means more taxation in western countries (or any other impairment of resources).
The clear-cut solution (namely, the first world supporting the third world) is not so clear-cut after all. Just like third world citizens should not be punished for past dictator rulers, first world citizens should not be punished for their wealth.
Having written all that, I have to admit that personally I see no other solution. Moneys sent as aid to developing countries will eventually show the greatest returns in the forms of lower immigration problems and a reduction in international conflicts, therefore even non-socialist countries like the US will eventually profit from it.