what can i do about a smelly cast

As mentioned above, keeping moisture away would help keep the smell away. Once moisture starts to develop and the cast starts to stink, it is quite unlikely to get rid of the bad odor completely. But a few tricks can help keep the cast free from odor.
Keep it dry.

This is the basic way to eliminate smell. Children and athletes are the ones who are known to develop stinky casts. This is because, children can’t keep their casts from getting wet and athletes begin to train which causes sweat to accumulate under the casts. Using plastic bags to cover the cast while taking a shower can prove to be useful. Athletes should restrain themselves from exercising.

A new cast.

Though not always possible, a stinky cast may be replaced with a new one if the doctor feels it is necessary. Sometimes, stinky casts can be the resultant of infection of the skin underneath the cast which would require treatment.

Use baking soda.

Sprinkling a little baking soda on the cast can help get rid of the smell, as baking soda can help dry up the moisture a bit.

Use perfume.

Spraying a little bit of perfume would help eliminate the external smell of the cast and make it comfortable for you and the people around you a bit. But the smell underneath the cast is still present.

Fabric softener.

Fabric softeners would do exactly what a perfume does. Rubbing some fabric softener over the cast would help eliminate the stench.