http://www.perlmonks.org?node_id=993825


in reply to Re^8: Module::Install hacking
in thread Module::Install hacking

I'd never even heard of $Config{installsitebin} prior to this discussion

As I understand it, EU::MM (and PPM) examine the values of $Config{install*} to determine where the files in blib get installed.
Both installsitescript and installsitebin appear to be of particular relevance when deciding where files in blib/script should be installed.

With my mingw-built perls, there's no site/bin specified by %Config, so anything in blib/script (sanely) ends up in perl/bin.
But, for some reason, ActiveState set their %Config in such a way that anything in blib/script ends up in perl/site/bin.

With build 806 of ActivePerl:
C:\_32>perl -V:installsite.* installsitearch='C:\_32\ap806\site\lib' installsitebin='C:\_32\ap806\bin' installsitelib='C:\_32\ap806\site\lib'
With build 827 of ActivePerl:
C:\_32>perl -V:installsite.* installsitearch='C:\_32\ap827\site\lib'; installsitebin='C:\_32\ap827\site\bin'; installsitehtml1dir=''; installsitehtml3dir=''; installsitelib='C:\_32\ap827\site\lib'; installsiteman1dir=''; installsiteman3dir=''; installsitescript='C:\_32\ap827\site\bin';
It seems that the rot set in somewhere between 806 and 827.

I would've thought that anyone who installs ActivePerl and accepts the default installation procedure of having the path modified appropriately would find that perl/site/bin would be in the path. (At least, that ought to be the case - given the way they've set up their %Config.)
It'd be a bit of a hassle for me to check on that behaviour - so I won't.

I've had no feedback (apart from yours) suggesting that there has been any problem associated with files being installed into perl/site/bin - though, of course, there are all sorts of reasons that explain the absence of such feedback ;-)

I think that they could all (libgcc_s_dw2_1.dll; libgcc_s_dw2_1.463.dll; libgcc_s_dw2_1.471.dll etc.) be put into perl\bin and coexist there without conflict, and without needing the extra directory or further additions to the path.

The only way of getting them into perl/bin on these current builds of ActivePerl is, afaik, to run a post-install script.
I guess that, too, is do-able in such a way that it doesn't cause annoyance to the user. I could have it such that every ppm install downloads the post-install script, but then that script exits immediately if the files that it would otherwise install are already in place.
This would require that all of the binaries would need to be rebuilt. (Lotta work for me.)

I hope that overall I helped more than hindered

No problems in that regard ;-)

Cheers,
Rob