One approach is to not try to make our colonies self-sufficient. Instead send a study stream of cargo missions to resupply them.
At first, that seems completely impractical due to the enormous fuel costs but it turns out that if you are in this for the long term there is a way around that.
Getting around the solar system is expensive if you are in a hurry, but if you can take your time it can be cheap.
It is not just actual planetary bodies that a spacecraft can orbit. It turns out there are also orbits around Lagrange point. Some stable, some unstable.
If you want to get from planet A to planet B cheaply and aren't in a hurry, what you can do is first put your cargo container in an orbit around an appropriate A/Sun Lagrange point, then nudge it into a carefully chosen unstable orbit.
The unstable orbit gets farther and farther away from the Lagrange point. At some point, it crosses an unstable B/Sun Lagrange orbit, with a low enough delta-V between the two that a nudge can move it from the former to the later.
It then gets closer and closer to that B/Sun Lagrange point, until you reach a point where another nudge can move it into the same orbit as B, just ahead or behind. Another nudge gets it to B.
How long this takes depends on A and B, and it is all over the place. Some combinations take a decade or two. Some take hundreds of years. Some take thousands.
This then is a plan for a long term thinking civilization to colonize their solar system (I'm going to assume that they also call their planet "Earth" and a major moon of it "Moon"). First, get yourself a serious presence in Earth orbit and Moon orbit, and maybe also on the Moon. Anything you can make in one of those places that is needed for your deep space missions is a win because you won't have to get it out of Earth's gravity well.
When you've got to the point that you can produce a steady stream of unmanned space cargo containers loaded with non-perishable items in Earth orbit or Moon orbit, you can start moving them to appropriate Lagrange points, and nudging them into appropriate unstable orbits for the places you want to colonize.
It will take a long time, but when you have a good number of shipments accumulated at a place you want to colonize, you then send your colonists using the fast, expensive route. Note that your colonists only need to take enough supplies for the trip itself. (And they don't need to take return fuel if not everyone is going to stay, as that can be included in the pre-sent cargo).
Here are a few articles on this [1][2][3].
[1] http://www.gg.caltech.edu/~mwl/publications/papers/IPSAndOri...
[2] https://en.wikipedia.org/wiki/Interplanetary_Transport_Netwo...
[3] http://www.dept.aoe.vt.edu/~sdross/papers/AmericanScientist2...