Well, if you are trying to execute something, I would find it's path first. You can use File::Which and then use the results within the backticks. This should guarantee that the path separators are correct and what you are trying to execute is, at least, in the path. You could also try File::Spec.