The issue here is that Scrolled is a method call that's buried in the source code. Perl doesn't know that method is not there until the code is actually executed. Adding a "use Tk::Scrollbar;" makes this explicit to the thing that makes the .exe and it will include every module that is "used". There are other command line options to force inclusion of a module, but I find adding this "normally unnecessary use statement" to the source code to be the easiest way.