The exec routine in jutil.cpp calls execv instead of execvp. This necessitates the full path of the program be specified in functions like Std.System.Utils.CmdProcess. Otherwise, the exec call fails with EACCES. On another note, is the env_in argument to callExternalProgram ever true?
Pipe is immune to this because it does not use the callExternalProgram routine.
At the very least, it needs to be documented that an absolute path must be provided.