On non-Windows, non-Linux and non-OSX (The big three) operating
systems getExecutablePath uses argv to find executable
path. However, this might not be absolute path as promised by
This patch moves POSIX realpath(3) to be shared across non-Windows
systems and then uses it for making path found in argv to be
canonicalized and absolute path.
Fixes Trac #12377