If I may start with a minor side trip -- I fully acknowldge these are real world problems. I have myself faced them. I do, truly, empathize with the OP's needs.
I just found the request itself to be entertaining; and frankly it was more the wording than the request. No harm or belittlement intended.
However, if you need a homogenus solution to work in a heterogenus environment, one way or another, you have some work to do.
I have solved this problem four different ways in the past.
- About 25 years ago, I used C. I wrote a library of routines as an abstraction layer for things which were different in the various environments. I compiled a binary for each environment, established a transfer mechanism, and used that framework. Painful, but effective.
- About 20 years ago, I created an embarrassingly underfeatured scripting language processor in C, used the above-mentioned framework to build and deploy the binary on each platform. From then on, if the activity could be handled by that simplistic scripting language, I wrote the script, shipped it to each environment, and ran it. Otherwise, I leaned back on the original framework.
- About 12 years ago, I had the privilege of being in control of the base configuration of every system I needed to reach. So I settled on a version of Perl and all systems had that version installed. I distributed perl scripts and executed them and popped a cold one afterwards to celebrate the value of a homogenus execution platform inside an otherwise heterogenus environment.
- About 5 years ago, I could count on Perl in the Linux and Mac environments and used Perl2Exe to create executables that worked on all the Windows environments. I was not permitted more control than that. So be it.
I am now responsible for a fairly homogenus environment. Makes it easy; it doesn't particularly matter what solution I use. It's also not as fun. :-)
| [reply] |