You need to be upfront with the people you fish with regarding your expectations before they hop onboard. If they still don't open their wallets, don't invite them again. Pretty simple. Sometimes it is just as enjoyable fishing solo.
BTW. I usually ask for a contribution from the friends I take fishing, unless it is just a short local trip and the fuel bill is low.