SaveDefinitions -> True
should do the trick, usually, but sometimes it's more reliable to use the Initialization
option of Manipulate
to make sure all necessary definitions are made before the Manipulate
tries to run.
Example from the documentation:
Manipulate[f[x], {x, 0, 6},
Initialization :> (
f[z_] := Range[z]
)
]