I've bundled a binary executable inside my TclApp application. My script can see it, but the OS claims it isn't there when I try to run it. How do I fix it?
When a TclApp application is created, it creates a virtual filesystem using the Tcl vfs module and puts what it needs in that virtual filesystem. While your application can see inside the VFS, the operating system can't -- hence the error.
The best solution is to extract the executable to a location in the regular filesystem and run it from there. The operating system will be able to see it, and it will work as expected.
Will people be able to decompile the executables I've made with PerlApp?
PerlApp does provide some level of code obfuscation. Decompiling executables is not trivial, but it is possible.
Critical copyrighted data and algorithms should not be included in Perl code within a PerlApp. If you are concerned about keeping important parts of your code secret, you may want to consider some workarounds such as: