Client tools failing to execute sub-commands if not on path
Environment
Description
Conclusion
Activity

Richard Chapman June 10, 2015 at 8:05 PM
On Windows, when executing a child process using the equivalent of execvp, the directory that contains the current process's executable is automatically included in the path.
This is most likely NOT the case in OSX (or linux for that matter) - the ecl executable may need to arrange for a similar effect explicitly.

John Holt June 10, 2015 at 4:52 PM
Neither were on on the path. The two command lines (less parameters, with results) are:
LN-MacBook-Pro:~ holtjd$ /opt/HPCCSystems/5.2.0/clienttools/bin/ecl packagemap
ecl 'packagemap' command not found
LN-MacBook-Pro:~ holtjd$ /opt/HPCCSystems/5.2.0/clienttools/bin/ecl-packagemap
Usage:
ecl packagemap <command> [command options]
packagemap Commands:
add Add a package map to the environment
delete Delete a package map
activate Activate a package map
deactivate Deactivate a package map (package map will not get loaded)
list List loaded package map names
info Return active package map information
validate Validate information in the package map file
query-files Show files used by a query and if/how they are mapped

Richard Chapman June 10, 2015 at 4:19 PMEdited
Were both ecl-packagemap and ecl executables both on the path? Can you give me the exact command lines you ran in each case?

John Holt May 6, 2015 at 12:25 PM
This seems like the kind of error that could be marked for "anyone" to fix. Maybe someone with a Mac would look into it.

Anthony Fishbeck May 6, 2015 at 12:00 AM
ecl packagemap list should execvp out to "ecl-packagemap list".
If the error being reported is "ecl 'packagemap' command not found". That should mean when ecl cli tried to execvp it is setting errno to ENOENT. "No such file or directory"
Not sure if execvp behaves differently in Mac OS.. documentation looks similar.
I'm not currently set up to debug Mac OS.
The command ecl packagemap list reports the packagemap command not found.
The command ecl-packagemep list appears to be the replacement.